
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Enum "savedir_option": Some values do not have unique names */

_Bool __regparm3
copy_internal(char *src_name,char *dst_name,_Bool new_dst,stat *parent,dir_list *ancestors,
             cp_options *x,_Bool command_line_arg,_Bool *first_dir_created_per_command_line_arg,
             _Bool *copy_into_self,_Bool *rename_succeeded)

{
  undefined4 *puVar1;
  int iVar2;
  code cVar3;
  _Bool _Var4;
  Interactive IVar5;
  bool bVar6;
  _Bool *p_Var7;
  code *pcVar8;
  _Bool *p_Var9;
  cp_options *pcVar10;
  __mode_t _Var11;
  _Bool _Var12;
  char cVar13;
  byte bVar14;
  int iVar15;
  uint uVar16;
  int iVar17;
  char *pcVar18;
  undefined4 uVar19;
  stat *psVar20;
  int *piVar21;
  char *pcVar22;
  Hash_table *pHVar23;
  size_t sVar24;
  Hash_table *pHVar25;
  uint uVar26;
  __blksize_t _Var27;
  code *pcVar28;
  undefined3 extraout_var;
  dir_list *pdVar29;
  mode_t mVar30;
  undefined3 extraout_var_00;
  cp_options *pcVar31;
  undefined3 extraout_var_01;
  undefined4 extraout_ECX;
  undefined4 extraout_ECX_00;
  undefined4 extraout_ECX_01;
  undefined4 extraout_ECX_02;
  undefined4 extraout_ECX_03;
  undefined4 extraout_ECX_04;
  undefined4 extraout_ECX_05;
  undefined4 extraout_ECX_06;
  undefined4 extraout_ECX_07;
  undefined4 extraout_ECX_08;
  undefined4 extraout_ECX_09;
  undefined4 extraout_ECX_10;
  undefined4 extraout_ECX_11;
  undefined4 extraout_ECX_12;
  undefined4 extraout_ECX_13;
  undefined4 extraout_ECX_14;
  byte bVar32;
  stat64 *psVar33;
  undefined4 extraout_EDX;
  undefined4 extraout_EDX_00;
  int iVar34;
  undefined4 extraout_EDX_01;
  undefined **ppuVar35;
  off_t *poVar36;
  undefined4 *puVar37;
  undefined4 *puVar38;
  undefined1 *puVar39;
  undefined1 *puVar40;
  off_t *poVar41;
  off_t *poVar42;
  byte *pbVar43;
  backup_type bVar44;
  backup_type bVar45;
  stat *psVar46;
  int in_GS_OFFSET;
  undefined1 uVar47;
  undefined1 uVar48;
  byte bVar49;
  bool bVar50;
  __off64_t _Var51;
  undefined3 in_stack_00000011;
  undefined1 auStack_28c [7];
  char local_285;
  uint local_284;
  undefined **local_280;
  _Bool *local_27c;
  uint local_278;
  Sparse_type local_274;
  uint local_270;
  code *local_26c;
  int local_268;
  uint local_264;
  int local_260;
  uint local_25c;
  code *local_258;
  code *local_254;
  int local_250;
  uint local_24c;
  int local_248;
  uint local_244;
  stat64 *local_240;
  uint local_23c;
  stat64 *local_238;
  stat64 *local_234;
  Hash_table *local_230;
  stat *local_22c;
  dir_list *local_228;
  __mode_t local_224;
  code *local_220;
  code *local_21c;
  int local_218;
  stat *local_214;
  __mode_t local_210;
  stat *local_20c;
  _Bool *local_208;
  uint local_204;
  char *local_200;
  uint local_1fc;
  char *local_1f8;
  char *local_1f4;
  cp_options *local_1f0;
  _Bool read_hole;
  _Bool wrote_hole_at_eof;
  int local_1d8;
  _Bool local_copy_into_self;
  undefined4 local_1d0;
  stat64 *local_1c4;
  char local_1c0;
  char local_1bf;
  __uid_t local_1bc;
  stat src_sb;
  stat dst_sb;
  stat tmp_dst_sb;
  stat dst_back_sb;
  timespec timespec [2];
  
  bVar49 = 0;
  ppuVar35 = &_GLOBAL_OFFSET_TABLE_;
  local_200 = src_name;
  local_1f8 = dst_name;
  local_22c = parent;
  local_220 = (code *)copy_into_self;
  local_21c = (code *)first_dir_created_per_command_line_arg;
  local_228 = ancestors;
  local_208 = rename_succeeded;
  local_1f0 = x;
  local_1fc = _command_line_arg;
  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,new_dst);
  local_224 = CONCAT31(local_224._1_3_,command_line_arg);
  iVar2 = *(int *)(in_GS_OFFSET + 0x14);
  *copy_into_self = false;
  iVar17 = x->rename_errno;
  if (x->move_mode != false) {
    if (-1 < iVar17) {
LAB_00015e6f:
      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);
      if (local_208 != (_Bool *)0x0) {
        *local_208 = iVar17 == 0;
      }
      goto LAB_00015e8b;
    }
    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);
    iVar17 = renameatu(-100,src_name,-100,dst_name,1);
    if (iVar17 != 0) {
      piVar21 = __errno_location();
      iVar17 = *piVar21;
      goto LAB_00015e6f;
    }
    if (local_208 != (_Bool *)0x0) {
      *local_208 = true;
    }
LAB_000161c0:
    if (local_1f0->last_file != false) {
      iVar17 = 0;
      goto LAB_00015ef0;
    }
    iVar17 = 0;
    pcVar18 = local_1f8;
    if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;
LAB_00015eb2:
    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);
    if (iVar15 == 0) goto LAB_00015ed4;
LAB_0001620a:
    puVar37 = (undefined4 *)&stack0xfffffd68;
LAB_0001620e:
    puVar37[-1] = 4;
    puVar37[-2] = 0x16215;
    pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);
    puVar38 = puVar37 + 1;
    puVar37[1] = 5;
    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);
LAB_00016222:
    *(undefined ***)((int)puVar38 + -4) = ppuVar35;
    *(undefined4 *)((int)puVar38 + -8) = 0;
    *(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;
    uVar19 = dcgettext();
    *(undefined4 *)((int)puVar38 + -0xc) = 0x16231;
    piVar21 = __errno_location();
    *(char **)((int)puVar38 + -0xc) = pcVar18;
    *(undefined4 *)((int)puVar38 + -0x10) = uVar19;
    *(int *)((int)puVar38 + -0x14) = *piVar21;
    *(undefined4 *)((int)puVar38 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
    *(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;
    error();
  }
LAB_00015e8b:
  if (iVar17 == 0) goto LAB_000161c0;
  if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {
    pcVar18 = local_200;
    if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;
LAB_000161e8:
    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);
    if (iVar15 != 0) goto LAB_0001620a;
LAB_00015ed4:
    local_204 = src_sb.st_mode;
    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {
      quotearg_style(shell_escape_always_quoting_style,local_200);
      if (local_1f0->install_mode == false) {
        dcgettext();
      }
      else {
        dcgettext();
      }
                    /* WARNING: Subroutine does not return */
      error();
    }
  }
LAB_00015ef0:
  puVar40 = auStack_28c;
  poVar36 = (off_t *)auStack_28c;
  puVar39 = auStack_28c;
  if (((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)) {
    local_20c = &src_sb;
    if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {
      _Var12 = seen_file(pHVar23,local_200,local_20c);
      if (_Var12) {
        quotearg_style(shell_escape_always_quoting_style,local_200);
        uVar19 = dcgettext();
                    /* WARNING: Subroutine does not return */
        error(0,0,uVar19);
      }
      pHVar23 = local_1f0->src_info;
    }
    record_file(pHVar23,local_200,local_20c);
  }
  local_20c = (stat *)0x1;
  if (local_1f0->dereference != DEREF_ALWAYS) {
    local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);
  }
  if ((byte)local_1f4 == '\0') {
    if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {
      uVar16 = local_204 & 0xf000;
      if (uVar16 == 0x8000) {
LAB_00016b80:
        iVar15 = 0x100;
        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);
        if ((((local_1f0->move_mode == false) &&
             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),
             local_1f0->symbolic_link == false)) &&
            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),
            local_1f0->hard_link == false)) &&
           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))
        {
          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);
          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;
        }
      }
      else {
        iVar15 = 0x100;
        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;
        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);
        if (bVar32 == 0) goto LAB_00016b80;
      }
      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);
      if (iVar15 == 0) {
        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);
      }
      else {
        piVar21 = __errno_location();
        if (*piVar21 == 0x28) {
          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;
          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);
        }
        else {
          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);
          if (*piVar21 != 2) {
LAB_00017070:
            local_1f0 = (cp_options *)piVar21;
            quotearg_style(shell_escape_always_quoting_style,local_1f8);
            uVar19 = dcgettext();
                    /* WARNING: Subroutine does not return */
            error(0,*(int *)local_1f0,uVar19);
          }
        }
        local_214 = (stat *)((uint)local_214 & 0xffffff00);
        if (iVar17 != 0x11) {
          uVar47 = local_230._0_1_;
          local_230 = (Hash_table *)0x0;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);
          puVar39 = auStack_28c;
          goto LAB_00016259;
        }
      }
      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;
      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&
           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&
         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&
          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {
        cVar13 = local_1f0->hard_link;
        if ((_Bool)cVar13 == false) {
          if (local_1f0->dereference == DEREF_NEVER) {
            bVar50 = true;
            bVar6 = true;
            goto LAB_000175fc;
          }
          local_234 = (stat64 *)&tmp_dst_sb;
          iVar17 = __lxstat64(3,local_1f8,local_234);
          if (iVar17 == 0) {
            local_240 = (stat64 *)&dst_back_sb;
            iVar17 = __lxstat64(3,local_200,local_240);
            if ((iVar17 == 0) &&
               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&
                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&
                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&
                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240
                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||
                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||
                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;
          }
LAB_000181e8:
          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);
          goto LAB_00016048;
        }
LAB_00018440:
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);
        goto LAB_00016048;
      }
      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;
      bVar50 = false;
      bVar6 = false;
LAB_000175fc:
      local_234 = (stat64 *)&dst_sb;
      psVar33 = (stat64 *)&src_sb;
      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {
LAB_0001761e:
        if (local_1f0->backup_type != no_backups) {
          if (bVar50) {
            _Var12 = same_name(local_200,local_1f8);
            bVar32 = !_Var12;
            cVar13 = false;
            goto LAB_00018431;
          }
          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||
              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))
          goto LAB_000181e8;
          goto LAB_00017680;
        }
        cVar13 = local_1f0->move_mode;
        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {
          if ((psVar33->st_mode & 0xf000) != 0xa000) {
LAB_0001847d:
            local_238 = (stat64 *)local_234->st_mode;
            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {
LAB_0001849c:
              cVar13 = local_1f0->move_mode;
            }
            else {
LAB_000187a8:
              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||
                   (int)psVar33->st_ino != (int)local_234->st_ino) ||
                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)
                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;
              cVar13 = local_1f0->hard_link;
              if ((_Bool)cVar13 != false) goto LAB_00018440;
              cVar13 = local_1f0->move_mode;
            }
            goto LAB_000184a6;
          }
        }
        else {
          local_238 = (stat64 *)local_234->st_mode;
          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;
          if ((bVar50) && (1 < local_234->st_nlink)) {
            local_238 = psVar33;
            cVar13 = same_name(local_200,local_1f8);
            if ((bool)cVar13) {
              psVar33 = local_238;
              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;
              goto LAB_0001849c;
            }
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);
            bVar32 = local_1f0->move_mode ^ 1;
            goto LAB_00018431;
          }
          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;
LAB_000184a6:
          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&
              (1 < local_234->st_nlink)) &&
             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,
             pcVar18 != (char *)0x0)) {
            _Var12 = same_name(pcVar18,local_1f8);
            bVar32 = !_Var12;
            free(pcVar18);
            cVar13 = false;
            goto LAB_00018431;
          }
        }
        if ((local_1f0->symbolic_link == false) ||
           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)
           ) {
          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;
          if ((psVar33->st_mode & 0xf000) == 0xa000) {
            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);
            if (iVar17 != 0) goto LAB_00016048;
          }
          else {
            psVar20 = &dst_back_sb;
            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {
              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;
              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);
              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);
            }
          }
          local_238 = (stat64 *)local_234->st_mode;
          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {
            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);
            if (iVar17 != 0) goto LAB_00016048;
          }
          else {
            psVar33 = local_234;
            psVar20 = &tmp_dst_sb;
            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {
              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;
              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);
              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);
            }
          }
          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&
               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&
             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&
              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {
            if (local_1f0->hard_link == false) goto LAB_00017680;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);
          }
        }
        goto LAB_00016048;
      }
      _Var12 = same_name(local_200,local_1f8);
      if (!_Var12) {
        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);
        cVar13 = true;
        bVar32 = local_1f0->move_mode ^ 1;
LAB_00018431:
        if (bVar32 != 0) goto LAB_00018440;
      }
LAB_00017680:
      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);
      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);
LAB_000176b3:
      uVar19 = dcgettext();
      goto LAB_000176c0;
    }
    local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);
    local_214 = (stat *)((uint)local_214._1_3_ << 8);
LAB_00016048:
    if (local_1f0->update == false) {
      if (local_1f0->move_mode != false) goto LAB_00017420;
      if ((local_204 & 0xf000) != 0x4000) {
LAB_00016ca2:
        puVar39 = auStack_28c;
        if ((local_1f0->interactive == I_ALWAYS_NO) ||
           ((local_1f0->interactive == I_ASK_USER &&
            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),
            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;
      }
LAB_00016cbd:
      puVar39 = auStack_28c;
      if ((byte)local_1f4 == '\0') {
        uVar16 = local_204 & 0xf000;
        if ((dst_sb.st_mode & 0xf000) != 0x4000) {
          if (uVar16 == 0x4000) {
            if ((local_1f0->move_mode == false) ||
               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {
              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);
              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);
              goto LAB_000176b3;
            }
            if ((byte)local_1fc != '\0') goto LAB_00016d0d;
            goto LAB_00017827;
          }
          bVar44 = local_1f0->backup_type;
          bVar45 = bVar44;
          if ((byte)local_1fc == '\0') goto LAB_00016d69;
LAB_00016d0d:
          if (bVar44 != numbered_backups) {
            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);
            if (_Var12) {
              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);
              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);
              goto LAB_000176b3;
            }
            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;
            goto LAB_00016d61;
          }
          bVar44 = numbered_backups;
          bVar45 = numbered_backups;
          if (local_1f0->move_mode != false) goto LAB_00017827;
LAB_00018700:
          pcVar18 = last_component(local_200);
          if (*pcVar18 == '.') {
            bVar50 = false;
LAB_00018ca5:
            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||
               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;
            if (bVar50) goto LAB_0001785b;
          }
          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;
LAB_0001785b:
          if (bVar45 != numbered_backups) {
            local_230 = (Hash_table *)strlen(pcVar18);
            local_234 = (stat64 *)last_component(local_1f8);
            sVar24 = strlen((char *)local_234);
            local_238 = (stat64 *)&simple_backup_suffix;
            local_1f4 = simple_backup_suffix;
            local_23c = strlen(simple_backup_suffix);
            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&
                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&
               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {
              sVar24 = strlen(local_1f8);
              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);
              local_1f4 = *(char **)&local_238->st_dev;
              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);
              strcpy(pcVar22,local_1f4);
              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);
              free(pcVar18);
              if (((iVar17 == 0) &&
                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&
                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&
                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&
                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {
                uVar19 = dcgettext();
                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);
                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);
LAB_000176c0:
                    /* WARNING: Subroutine does not return */
                error(0,0,uVar19);
              }
            }
          }
          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);
          local_230 = pHVar23;
          if (pHVar23 == (Hash_table *)0x0) {
            piVar21 = __errno_location();
            iVar17 = 0x11;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
            puVar39 = auStack_28c;
            if (*piVar21 != 2) {
              quotearg_style(shell_escape_always_quoting_style,local_1f8);
              uVar19 = dcgettext();
                    /* WARNING: Subroutine does not return */
              error(0,*piVar21,uVar19);
            }
          }
          else {
            sVar24 = strlen((char *)pHVar23);
            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);
            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;
            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;
            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;
            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;
            pHVar25 = (Hash_table *)
                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),
                             *(void **)(&stack0xfffffd68 + iVar15),
                             *(size_t *)(&stack0xfffffd6c + iVar15));
            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;
            iVar17 = 0x11;
            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;
            free(*(void **)(&stack0xfffffd64 + iVar15));
            local_230 = pHVar25;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
            puVar39 = auStack_28c + iVar15;
          }
          goto LAB_00016259;
        }
        if (uVar16 != 0x4000) {
LAB_0001828c:
          if ((local_1f0->move_mode == false) ||
             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {
            quotearg_style(shell_escape_always_quoting_style,local_1f8);
            uVar19 = dcgettext();
                    /* WARNING: Subroutine does not return */
            error(0,0,uVar19);
          }
LAB_00017827:
          bVar45 = bVar44;
          if ((src_sb.st_mode & 0xf000) == 0x4000) {
LAB_0001892a:
            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;
            if (bVar45 == no_backups) {
              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);
              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);
              goto LAB_000176b3;
            }
          }
LAB_0001783f:
          pcVar18 = last_component(local_200);
          if (*pcVar18 == '.') {
            bVar50 = true;
            goto LAB_00018ca5;
          }
          goto LAB_0001785b;
        }
LAB_00016d61:
        bVar45 = local_1f0->backup_type;
LAB_00016d69:
        if (local_1f0->move_mode != false) {
          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;
LAB_00018756:
          if (bVar45 != no_backups) goto LAB_0001783f;
LAB_00016da2:
          uVar47 = local_230._0_1_;
          iVar17 = 0x11;
          local_230 = (Hash_table *)0x0;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);
          puVar39 = auStack_28c;
          goto LAB_00016259;
        }
        bVar50 = false;
        if (bVar45 != no_backups) goto LAB_00018700;
LAB_00016d83:
        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||
           (((local_1f0->unlink_dest_before_opening == false &&
             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&
            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))
        goto LAB_00016da2;
        iVar17 = unlink(local_1f8);
        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {
          local_1f0 = (cp_options *)piVar21;
          quotearg_style(shell_escape_always_quoting_style,local_1f8);
          uVar19 = dcgettext();
                    /* WARNING: Subroutine does not return */
          error(0,*(int *)local_1f0,uVar19);
        }
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);
        if (local_1f0->verbose != false) {
          iVar17 = 0x11;
          quotearg_style(shell_escape_always_quoting_style,local_1f8);
          dcgettext();
          __printf_chk();
          local_230 = (Hash_table *)0x0;
          puVar39 = auStack_28c;
          goto LAB_00016259;
        }
        if ((byte)local_1fc != '\0') {
          iVar17 = 0x11;
          local_230 = local_1f0->dest_info;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);
          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;
          local_230 = (Hash_table *)0x0;
          iVar17 = 0x11;
          goto LAB_00016277;
        }
        iVar17 = 0x11;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
        local_230 = (Hash_table *)0x0;
        poVar36 = (off_t *)auStack_28c;
        goto LAB_00016356;
      }
LAB_00016570:
      poVar36 = (off_t *)puVar39;
      bVar32 = 1;
      goto LAB_0001614a;
    }
    if ((local_204 & 0xf000) == 0x4000) {
      if (local_1f0->move_mode == false) goto LAB_00016cbd;
LAB_00017420:
      IVar5 = local_1f0->interactive;
      if ((IVar5 != I_ALWAYS_NO) &&
         (((IVar5 != I_ASK_USER &&
           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||
            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||
          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))
      goto LAB_00016cbd;
      puVar39 = auStack_28c;
      if (local_208 != (_Bool *)0x0) {
        *local_208 = true;
        puVar39 = auStack_28c;
      }
      goto LAB_00016570;
    }
    uVar16 = 0;
    if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {
      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||
                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);
    }
    iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);
    if (iVar17 < 0) {
      if (local_1f0->move_mode == false) goto LAB_00016ca2;
      goto LAB_00017420;
    }
    if (local_208 != (_Bool *)0x0) {
      *local_208 = true;
    }
    pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),
                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));
    puVar39 = auStack_28c;
    if ((pcVar18 == (char *)0x0) ||
       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),
       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;
    poVar36 = (off_t *)auStack_28c;
    if (local_1f0->preserve_security_context != false) {
      restore_default_fscreatecon_or_die();
      poVar36 = (off_t *)auStack_28c;
    }
    goto LAB_00016148;
  }
  local_214 = (stat *)((uint)local_214._1_3_ << 8);
  local_230 = (Hash_table *)0x0;
LAB_00016259:
  puVar40 = puVar39;
  if (((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0)) {
LAB_00016338:
    poVar36 = (off_t *)puVar40;
    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {
LAB_00016b18:
      pcVar22 = local_1f8;
      pcVar18 = local_200;
      pHVar23 = local_230;
      if ((local_204 & 0xf000) != 0x4000) {
        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;
        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);
      }
    }
    if (iVar17 == 0) {
      if (local_1f0->move_mode != false) goto LAB_00016524;
      goto LAB_000165a0;
    }
LAB_00016356:
    uVar16 = src_sb.st_ino._4_4_;
    pcVar18 = (char *)src_sb.st_ino;
    if ((local_1f0->recursive != false) && ((local_204 & 0xf000) == 0x4000)) {
      local_214 = (stat *)src_sb.st_dev;
      local_210 = src_sb.st_dev._4_4_;
      if ((byte)local_1fc == '\0') {
        *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;
        *(stat **)((int)poVar36 + -8) = local_214;
        *(uint *)((int)poVar36 + -0xc) = uVar16;
        *(char **)((int)poVar36 + -0x10) = pcVar18;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x163c0;
        local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),
                                               *(dev_t *)((int)poVar36 + -8));
      }
      else {
        *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;
        *(stat **)((int)poVar36 + -0x14) = local_214;
        *(uint *)((int)poVar36 + -0x18) = uVar16;
        *(char **)((int)poVar36 + -0x1c) = pcVar18;
        *(char **)((int)poVar36 + -0x20) = local_1f8;
        *(undefined4 *)((int)poVar36 + -0x24) = 0x176f4;
        local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),
                                            *(ino_t *)((int)poVar36 + -0x1c),
                                            *(dev_t *)((int)poVar36 + -0x14));
      }
      if (local_214 != (stat *)0x0) {
LAB_000163d3:
        *(stat **)((int)poVar36 + -0xc) = local_214;
        *(char **)((int)poVar36 + -0x10) = local_200;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x163e7;
        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));
        if (_Var12) {
          *(char **)((int)poVar36 + -8) = top_level_dst_name;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 1;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b02;
          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(char **)((int)poVar36 + -8) = top_level_src_name;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b16;
          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(undefined4 *)((int)poVar36 + -8) = 5;
          *(char **)((int)poVar36 + -0xc) = "cannot copy a directory, %s, into itself, %s";
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b2b;
          uVar19 = dcgettext();
          *(char **)((int)poVar36 + -0x10) = pcVar18;
          *(char **)((int)poVar36 + -0x14) = pcVar22;
          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;
          *(undefined4 *)((int)poVar36 + -0x1c) = 0;
          *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b39;
          error();
        }
        *(stat **)((int)poVar36 + -0xc) = local_214;
        *(char **)((int)poVar36 + -0x10) = local_1f8;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x16406;
        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));
        if (_Var12) {
          *(char **)((int)poVar36 + -0xc) = top_level_src_name;
          *(undefined4 *)((int)poVar36 + -0x10) = 4;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18eee;
          pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),
                                   *(char **)((int)poVar36 + -0xc));
          *(undefined4 *)((int)poVar36 + -8) = 5;
          *(char **)((int)poVar36 + -0xc) = "warning: source directory %s specified more than once";
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18f03;
          uVar19 = dcgettext();
          *(char **)((int)poVar36 + -0x14) = pcVar18;
          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;
          *(undefined4 *)((int)poVar36 + -0x1c) = 0;
          *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018f0e;
          error();
        }
        if ((local_1f0->dereference != DEREF_ALWAYS) &&
           ((local_1f0->dereference != DEREF_COMMAND_LINE_ARGUMENTS || ((byte)local_1fc == '\0'))))
        {
          *(stat **)((int)poVar36 + -8) = local_214;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 1;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d3f;
          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(char **)((int)poVar36 + -8) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d53;
          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(undefined4 *)((int)poVar36 + -8) = 5;
          *(char **)((int)poVar36 + -0xc) = "will not create hard link %s to directory %s";
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d68;
          uVar19 = dcgettext();
          *(char **)((int)poVar36 + -0x10) = pcVar18;
          *(char **)((int)poVar36 + -0x14) = pcVar22;
          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;
          *(undefined4 *)((int)poVar36 + -0x1c) = 0;
          *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018d76;
          error();
        }
      }
LAB_00016438:
      cVar13 = local_1f0->move_mode;
LAB_00016afb:
      if (cVar13 == '\0') {
LAB_00016b03:
        local_208 = (_Bool *)((uint)local_1f4 & 0xff);
      }
      else {
LAB_00016495:
        if (iVar17 == 0x11) {
          *(char **)((int)poVar36 + -0xc) = local_1f8;
          *(char **)((int)poVar36 + -0x10) = local_200;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x174bc;
          iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));
          if (iVar17 != 0) {
            *(undefined4 *)((int)poVar36 + -4) = 0x174cc;
            piVar21 = __errno_location();
            iVar17 = *piVar21;
            if (iVar17 != 0) goto LAB_0001649e;
          }
LAB_00016524:
          if (local_1f0->verbose != false) {
            *(undefined4 *)((int)poVar36 + -8) = 5;
            *(char **)((int)poVar36 + -0xc) = "renamed ";
            *(undefined4 *)((int)poVar36 + -0x10) = 0;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18223;
            uVar19 = dcgettext();
            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;
            *(undefined4 *)((int)poVar36 + -0x10) = 1;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x1822d;
            __printf_chk();
            pcVar22 = local_1f8;
            pcVar18 = local_200;
            pHVar23 = local_230;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18244;
            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);
          }
          if (local_1f0->set_security_context != false) {
            *(cp_options **)((int)poVar36 + -4) = local_1f0;
            *(undefined4 *)((int)poVar36 + -8) = 1;
            *(undefined4 *)((int)poVar36 + -0xc) = 0;
            *(char **)((int)poVar36 + -0x10) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18208;
            set_file_security_ctx
                      (*(char **)((int)poVar36 + -0x10),*(_Bool *)((int)poVar36 + -0xc),
                       *(_Bool *)((int)poVar36 + -8),*(cp_options **)((int)poVar36 + -4));
          }
          if (local_208 != (_Bool *)0x0) {
            *local_208 = true;
          }
          puVar39 = (undefined1 *)poVar36;
          if (((byte)local_1fc != '\0') && (local_1f0->last_file == false)) {
            *(stat **)((int)poVar36 + -8) = &src_sb;
            pcVar31 = local_1f0;
            *(char **)((int)poVar36 + -0xc) = local_1f8;
            *(Hash_table **)((int)poVar36 + -0x10) = pcVar31->dest_info;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17ab6;
            record_file(*(Hash_table **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc),
                        *(stat **)((int)poVar36 + -8));
            bVar32 = (byte)local_1fc;
            goto LAB_0001614a;
          }
          goto LAB_00016570;
        }
LAB_0001649e:
        if (iVar17 == 0x16) {
          *(char **)((int)poVar36 + -8) = top_level_dst_name;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 1;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x185ca;
          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(char **)((int)poVar36 + -8) = top_level_src_name;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x185de;
          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(undefined4 *)((int)poVar36 + -8) = 5;
          *(char **)((int)poVar36 + -0xc) = "cannot move %s to a subdirectory of itself, %s";
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x185f3;
          uVar19 = dcgettext();
          *(char **)((int)poVar36 + -0x10) = pcVar18;
          *(char **)((int)poVar36 + -0x14) = pcVar22;
          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;
          *(undefined4 *)((int)poVar36 + -0x1c) = 0;
          *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018606;
          error();
        }
        if (iVar17 != 0x12) {
          *(char **)((int)poVar36 + -8) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 1;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x180a2;
          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(char **)((int)poVar36 + -8) = local_200;
          *(undefined4 *)((int)poVar36 + -0xc) = 4;
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          local_1f0 = (cp_options *)pcVar18;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x180ba;
          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                     *(quoting_style *)((int)poVar36 + -0xc),
                                     *(char **)((int)poVar36 + -8));
          *(undefined4 *)((int)poVar36 + -8) = 5;
          *(char **)((int)poVar36 + -0xc) = "cannot move %s to %s";
          *(undefined4 *)((int)poVar36 + -0x10) = 0;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x180cf;
          uVar19 = dcgettext();
          *(cp_options **)((int)poVar36 + -0x10) = local_1f0;
          *(char **)((int)poVar36 + -0x14) = pcVar18;
          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;
          *(int *)((int)poVar36 + -0x1c) = iVar17;
          goto LAB_00017594;
        }
        uVar16 = local_204 & 0xf000;
        if (uVar16 == 0x4000) {
          *(char **)((int)poVar36 + -0x10) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x1825e;
          iVar17 = rmdir(*(char **)((int)poVar36 + -0x10));
          if (iVar17 != 0) {
            *(undefined4 *)((int)poVar36 + -4) = 0x1826e;
            piVar21 = __errno_location();
            if (*piVar21 != 2) goto LAB_00017548;
          }
        }
        else {
          *(char **)((int)poVar36 + -0x10) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x164d6;
          iVar17 = unlink(*(char **)((int)poVar36 + -0x10));
          if (iVar17 != 0) {
            *(undefined4 *)((int)poVar36 + -4) = 0x1753d;
            piVar21 = __errno_location();
            if (*piVar21 != 2) {
LAB_00017548:
              *(char **)((int)poVar36 + -8) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0xc) = 4;
              *(undefined4 *)((int)poVar36 + -0x10) = 1;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x1755a;
              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                         *(quoting_style *)((int)poVar36 + -0xc),
                                         *(char **)((int)poVar36 + -8));
              *(char **)((int)poVar36 + -8) = local_200;
              *(undefined4 *)((int)poVar36 + -0xc) = 4;
              *(undefined4 *)((int)poVar36 + -0x10) = 0;
              local_1f0 = (cp_options *)pcVar18;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x17572;
              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                         *(quoting_style *)((int)poVar36 + -0xc),
                                         *(char **)((int)poVar36 + -8));
              *(undefined4 *)((int)poVar36 + -8) = 5;
              *(char **)((int)poVar36 + -0xc) =
                   "inter-device move failed: %s to %s; unable to remove target";
              *(undefined4 *)((int)poVar36 + -0x10) = 0;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x17587;
              uVar19 = dcgettext();
              *(cp_options **)((int)poVar36 + -0x10) = local_1f0;
              *(char **)((int)poVar36 + -0x14) = pcVar18;
              *(undefined4 *)((int)poVar36 + -0x18) = uVar19;
              *(int *)((int)poVar36 + -0x1c) = *piVar21;
LAB_00017594:
              *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)((int)poVar36 + -0x24) = &UNK_0001759b;
              error();
            }
          }
          bVar32 = uVar16 != 0x4000 & local_1f0->verbose;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);
          if (bVar32 != 0) {
            *(undefined4 *)((int)poVar36 + -8) = 5;
            *(char **)((int)poVar36 + -0xc) = "copied ";
            *(undefined4 *)((int)poVar36 + -0x10) = 0;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a23;
            uVar19 = dcgettext();
            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;
            *(undefined4 *)((int)poVar36 + -0x10) = 1;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a2d;
            __printf_chk();
            pcVar22 = local_1f8;
            pcVar18 = local_200;
            pHVar23 = local_230;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a44;
            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);
            local_208 = (_Bool *)0x1;
            goto LAB_000165b7;
          }
        }
        local_208 = (_Bool *)0x1;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
      }
      goto LAB_000165b7;
    }
    cVar13 = local_1f0->move_mode;
    if ((_Bool)cVar13 == false) {
      if (local_1f0->preserve_links == false) goto LAB_000165a0;
      if (local_1f0->hard_link == false) goto LAB_00016ac0;
      local_214 = (stat *)0x0;
      goto LAB_00016b03;
    }
    if (src_sb.st_nlink != 1) {
      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {
LAB_00016ac0:
        if ((1 < src_sb.st_nlink) ||
           ((((byte)local_1fc != '\0' && (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS))
            || (local_214 = (stat *)0x0, local_1f0->dereference == DEREF_ALWAYS)))) {
          *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;
          *(stat **)((int)poVar36 + -0x14) = (stat *)src_sb.st_dev;
          *(uint *)((int)poVar36 + -0x18) = src_sb.st_ino._4_4_;
          *(char **)((int)poVar36 + -0x1c) = (char *)src_sb.st_ino;
          *(char **)((int)poVar36 + -0x20) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0x24) = 0x1772e;
          local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),
                                              *(ino_t *)((int)poVar36 + -0x1c),
                                              *(dev_t *)((int)poVar36 + -0x14));
          goto LAB_00017737;
        }
        goto LAB_00016afb;
      }
      local_214 = (stat *)0x0;
      goto LAB_00016495;
    }
    *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;
    *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;
    *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;
    *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;
    *(undefined4 *)((int)poVar36 + -0x14) = 0x1834d;
    local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),
                                           *(dev_t *)((int)poVar36 + -8));
LAB_00017737:
    pcVar31 = local_1f0;
    if (local_214 == (stat *)0x0) goto LAB_00016438;
    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;
    *(stat **)((int)poVar36 + -0xc) = local_20c;
    pcVar18 = local_1f8;
    *(uint *)((int)poVar36 + -0x10) = (uint)pcVar31->verbose;
    psVar20 = local_214;
    *(undefined4 *)((int)poVar36 + -0x14) = 0x17785;
    _Var12 = create_hard_link((char *)psVar20,pcVar18,true,*(_Bool *)((int)poVar36 + -0x10),
                              *(_Bool *)((int)poVar36 + -0xc));
    puVar39 = (undefined1 *)poVar36;
    if (_Var12) goto LAB_00016570;
    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;
LAB_00016fcb:
    pHVar23 = local_230;
    if (local_230 != (Hash_table *)0x0) {
      *(char **)((int)poVar36 + -0xc) = local_1f8;
      *(Hash_table **)((int)poVar36 + -0x10) = pHVar23;
      *(undefined4 *)((int)poVar36 + -0x14) = 0x16fe8;
      iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));
      if (iVar17 != 0) {
        *(char **)((int)poVar36 + -0xc) = local_1f8;
        *(undefined4 *)((int)poVar36 + -0x10) = 4;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x182f0;
        pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),
                                 *(char **)((int)poVar36 + -0xc));
        puVar38 = (undefined4 *)((int)poVar36 + -8);
        *(undefined4 *)((int)poVar36 + -8) = 5;
        ppuVar35 = ppuVar35 + -0x2be3;
        goto LAB_00016222;
      }
      if (local_1f0->verbose != false) {
        *(char **)((int)poVar36 + -8) = local_1f8;
        *(undefined4 *)((int)poVar36 + -0xc) = 4;
        *(undefined4 *)((int)poVar36 + -0x10) = 1;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x17015;
        pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                   *(quoting_style *)((int)poVar36 + -0xc),
                                   *(char **)((int)poVar36 + -8));
        *(Hash_table **)((int)poVar36 + -8) = local_230;
        *(undefined4 *)((int)poVar36 + -0xc) = 4;
        *(undefined4 *)((int)poVar36 + -0x10) = 0;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x17029;
        pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),
                                   *(quoting_style *)((int)poVar36 + -0xc),
                                   *(char **)((int)poVar36 + -8));
        *(undefined4 *)((int)poVar36 + -8) = 5;
        *(undefined ***)((int)poVar36 + -0xc) = ppuVar35 + -0x2bde;
        *(undefined4 *)((int)poVar36 + -0x10) = 0;
        *(undefined4 *)((int)poVar36 + -0x14) = 0x1703e;
        uVar19 = dcgettext();
        *(char **)((int)poVar36 + -0x14) = pcVar18;
        *(char **)((int)poVar36 + -0x18) = pcVar22;
        *(undefined4 *)((int)poVar36 + -0x1c) = uVar19;
        *(undefined4 *)((int)poVar36 + -0x20) = 1;
        *(undefined4 *)((int)poVar36 + -0x24) = 0x17048;
        __printf_chk();
      }
    }
  }
  else {
LAB_00016277:
    if (local_1f0->move_mode != false) goto LAB_00016338;
    if (local_1f0->backup_type == no_backups) {
      psVar20 = &dst_sb;
      if ((char)local_214 == '\0') {
        *(stat **)(puVar40 + -8) = &dst_back_sb;
        *(char **)(puVar40 + -0xc) = local_1f8;
        *(undefined4 *)(puVar40 + -0x10) = 3;
        local_214 = &dst_back_sb;
        *(undefined4 *)(puVar40 + -0x14) = 0x17a7d;
        iVar15 = __lxstat64(*(int *)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),
                            *(stat64 **)(puVar40 + -8));
        psVar20 = local_214;
        if (iVar15 != 0) goto LAB_00016338;
      }
      pcVar31 = local_1f0;
      if ((psVar20->st_mode & 0xf000) == 0xa000) {
        *(stat **)(puVar40 + -8) = psVar20;
        *(char **)(puVar40 + -0xc) = local_1f8;
        *(Hash_table **)(puVar40 + -0x10) = pcVar31->dest_info;
        *(undefined4 *)(puVar40 + -0x14) = 0x162d3;
        _Var12 = seen_file(*(Hash_table **)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),
                           *(stat **)(puVar40 + -8));
        if (_Var12) {
          *(char **)(puVar40 + -8) = local_1f8;
          *(undefined4 *)(puVar40 + -0xc) = 4;
          *(undefined4 *)(puVar40 + -0x10) = 1;
          *(undefined4 *)(puVar40 + -0x14) = 0x162ec;
          pcVar18 = quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),
                                     *(char **)(puVar40 + -8));
          *(char **)(puVar40 + -8) = local_200;
          *(undefined4 *)(puVar40 + -0xc) = 4;
          *(undefined4 *)(puVar40 + -0x10) = 0;
          *(undefined4 *)(puVar40 + -0x14) = 0x16300;
          local_1f0 = (cp_options *)
                      quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),
                                       *(char **)(puVar40 + -8));
          *(undefined4 *)(puVar40 + -8) = 5;
          *(char **)(puVar40 + -0xc) = "will not copy %s through just-created symlink %s";
          *(undefined4 *)(puVar40 + -0x10) = 0;
          *(undefined4 *)(puVar40 + -0x14) = 0x16319;
          uVar19 = dcgettext();
          pcVar31 = local_1f0;
          *(char **)(puVar40 + -0x10) = pcVar18;
          *(cp_options **)(puVar40 + -0x14) = pcVar31;
          *(undefined4 *)(puVar40 + -0x18) = uVar19;
          *(undefined4 *)(puVar40 + -0x1c) = 0;
          *(undefined4 *)(puVar40 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar40 + -0x24) = &UNK_0001632d;
          error();
        }
      }
      goto LAB_00016338;
    }
    poVar36 = (off_t *)puVar40;
    if (local_1f0->verbose != false) goto LAB_00016b18;
    if (iVar17 != 0) goto LAB_00016356;
LAB_000165a0:
    local_214 = (stat *)0x0;
    local_208 = (_Bool *)((uint)local_1f4 & 0xff);
LAB_000165b7:
    local_234 = (stat64 *)(local_204 & 0xfff);
    if (local_1f0->set_mode != false) {
      local_234 = (stat64 *)(local_1f0->mode & 0xfff);
    }
    if (local_1f0->preserve_ownership == false) {
      local_238 = (stat64 *)(local_204 & 0xf000);
      if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {
        *(cp_options **)(poVar36 + -2) = local_1f0;
        *(_Bool **)((int)poVar36 + -0x14) = local_208;
        *(uint *)(poVar36 + -3) = local_204;
        *(char **)((int)poVar36 + -0x1c) = local_1f8;
        *(char **)(poVar36 + -4) = local_200;
        *(undefined4 *)((int)poVar36 + -0x24) = 0x16dee;
        _Var12 = set_process_security_ctx
                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),
                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),
                            *(cp_options **)(poVar36 + -2));
        if (_Var12) {
          local_23c = (uint)local_234 & 0x12;
          goto LAB_00016e08;
        }
      }
      else {
        *(cp_options **)(poVar36 + -2) = local_1f0;
        *(_Bool **)((int)poVar36 + -0x14) = local_208;
        *(uint *)(poVar36 + -3) = local_204;
        *(char **)((int)poVar36 + -0x1c) = local_1f8;
        *(char **)(poVar36 + -4) = local_200;
        *(undefined4 *)((int)poVar36 + -0x24) = 0x16a82;
        _Var12 = set_process_security_ctx
                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),
                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),
                            *(cp_options **)(poVar36 + -2));
        local_23c = 0;
        if (_Var12) goto LAB_0001664e;
      }
    }
    else {
      *(cp_options **)(poVar36 + -2) = local_1f0;
      *(_Bool **)((int)poVar36 + -0x14) = local_208;
      *(uint *)(poVar36 + -3) = local_204;
      *(char **)((int)poVar36 + -0x1c) = local_1f8;
      *(char **)(poVar36 + -4) = local_200;
      *(undefined4 *)((int)poVar36 + -0x24) = 0x16618;
      _Var12 = set_process_security_ctx
                         (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),
                          *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),
                          *(cp_options **)(poVar36 + -2));
      if (_Var12) {
        local_23c = (uint)local_234 & 0x3f;
        local_238 = (stat64 *)(local_204 & 0xf000);
        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {
LAB_00016e08:
          pcVar31 = local_1f0;
          if (local_228 == (dir_list *)0x0) {
            local_20c = (stat *)src_sb.st_dev;
            local_224 = src_sb.st_dev._4_4_;
          }
          else {
            local_20c = (stat *)src_sb.st_dev;
            local_224 = src_sb.st_dev._4_4_;
            pdVar29 = local_228;
            do {
              if ((*(uint *)((int)&pdVar29->ino + 4) == src_sb.st_ino._4_4_ &&
                   *(char **)&pdVar29->ino == (char *)src_sb.st_ino) &&
                 (src_sb.st_dev._4_4_ == *(__mode_t *)((int)&pdVar29->dev + 4) &&
                  (stat *)src_sb.st_dev == *(stat **)&pdVar29->dev)) {
                *(char **)((int)poVar36 + -0xc) = local_200;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x16e7e;
                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                *(undefined4 *)(poVar36 + -1) = 5;
                pcVar18 = "cannot copy cyclic symbolic link %s";
                goto LAB_00016e8b;
              }
              pdVar29 = pdVar29->parent;
            } while (pdVar29 != (dir_list *)0x0);
          }
          local_20c = (stat *)src_sb.st_dev;
          local_224 = src_sb.st_dev._4_4_;
          local_238 = (stat64 *)((int)poVar36 - 0x11U & 0xfffffff0);
          local_238->__pad1 = src_sb.st_ino._4_4_;
          local_238->__st_ino = (__ino_t)(stat *)src_sb.st_dev;
          *(dir_list **)&local_238->st_dev = local_228;
          *(char **)((int)&local_238->st_dev + 4) = (char *)src_sb.st_ino;
          local_238->st_mode = src_sb.st_dev._4_4_;
          if (((byte)local_1f4 == '\0') && ((dst_sb.st_mode & 0xf000) == 0x4000)) {
            if (local_1f0->set_security_context == false) {
              bVar32 = local_1f0->preserve_security_context;
              if ((_Bool)bVar32 != false) goto LAB_0001889e;
            }
            else {
              bVar32 = local_1f0->preserve_security_context;
LAB_0001889e:
              *(cp_options **)((int)poVar36 + -0x24) = local_1f0;
              *(undefined4 *)(poVar36 + -5) = 0;
              *(uint *)((int)poVar36 + -0x2c) = (uint)bVar32;
              *(char **)(poVar36 + -6) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0x34) = 0x188b3;
              _Var12 = set_file_security_ctx
                                 (*(char **)(poVar36 + -6),*(_Bool *)((int)poVar36 + -0x2c),
                                  SUB81(poVar36[-5],0),*(cp_options **)((int)poVar36 + -0x24));
              if ((!_Var12) && (poVar42 = poVar36 + -4, pcVar31->require_preserve_context != false))
              goto LAB_00016fad;
            }
            local_24c = local_24c & 0xffffff00;
            local_23c = 0;
          }
          else {
            *(uint *)((int)poVar36 + -0x2c) = ~local_23c & (uint)local_234;
            *(char **)(poVar36 + -6) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0x34) = 0x17154;
            iVar17 = mkdir(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));
            if (iVar17 != 0) {
              *(char **)((int)poVar36 + -0x2c) = local_1f8;
              *(undefined4 *)(poVar36 + -6) = 4;
              *(undefined4 *)((int)poVar36 + -0x34) = 100000;
              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),
                                       *(char **)((int)poVar36 + -0x2c));
              poVar41 = poVar36 + -5;
              *(undefined4 *)(poVar36 + -5) = 5;
              pcVar18 = "cannot create directory %s";
LAB_00016f90:
              *(char **)((int)poVar41 + -4) = pcVar18;
              *(undefined4 *)((int)poVar41 + -8) = 0;
              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f98;
              uVar19 = dcgettext();
              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f9f;
              piVar21 = __errno_location();
              *(char **)((int)poVar41 + -0xc) = pcVar22;
              *(undefined4 *)((int)poVar41 + -0x10) = uVar19;
              *(int *)((int)poVar41 + -0x14) = *piVar21;
              *(undefined4 *)((int)poVar41 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)((int)poVar41 + -0x1c) = &UNK_00016faa;
              error();
            }
            *(stat **)(poVar36 + -5) = &dst_sb;
            *(char **)((int)poVar36 + -0x2c) = local_1f8;
            *(undefined4 *)(poVar36 + -6) = 3;
            *(undefined4 *)((int)poVar36 + -0x34) = 0x17176;
            iVar17 = __lxstat64((int)poVar36[-6],*(char **)((int)poVar36 + -0x2c),
                                *(stat64 **)(poVar36 + -5));
            _Var11 = dst_sb.st_mode;
            if (iVar17 != 0) {
              *(char **)((int)poVar36 + -0x2c) = local_1f8;
              *(undefined4 *)(poVar36 + -6) = 4;
              *(undefined4 *)((int)poVar36 + -0x34) = 0x18ce1;
              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),
                                       *(char **)((int)poVar36 + -0x2c));
              poVar41 = poVar36 + -5;
              *(undefined4 *)(poVar36 + -5) = 5;
              pcVar18 = "cannot stat %s";
              goto LAB_00016f90;
            }
            local_24c = local_24c & 0xffffff00;
            if ((dst_sb.st_mode & 0x1c0) != 0x1c0) {
              *(__mode_t *)((int)poVar36 + -0x2c) = dst_sb.st_mode | 0x1c0;
              *(char **)(poVar36 + -6) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0x34) = 0x171b2;
              iVar17 = chmod(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));
              local_270 = _Var11;
              local_24c = CONCAT31(local_24c._1_3_,1);
              if (iVar17 != 0) {
                *(char **)((int)poVar36 + -0x2c) = local_1f8;
                *(undefined4 *)(poVar36 + -6) = 4;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x19082;
                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),
                                         *(char **)((int)poVar36 + -0x2c));
                poVar41 = poVar36 + -5;
                *(undefined4 *)(poVar36 + -5) = 5;
                pcVar18 = "setting permissions for %s";
                goto LAB_00016f90;
              }
            }
            if (*local_21c == (code)0x0) {
              *(__mode_t *)(poVar36 + -6) = dst_sb.st_dev._4_4_;
              *(stat **)((int)poVar36 + -0x34) = (stat *)dst_sb.st_dev;
              *(uint *)(poVar36 + -7) = dst_sb.st_ino._4_4_;
              *(char **)((int)poVar36 + -0x3c) = (char *)dst_sb.st_ino;
              *(char **)(poVar36 + -8) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0x44) = 0x18c19;
              remember_copied(*(char **)(poVar36 + -8),*(ino_t *)((int)poVar36 + -0x3c),
                              *(dev_t *)((int)poVar36 + -0x34));
              *local_21c = (code)0x1;
            }
            pcVar22 = local_1f8;
            pcVar18 = local_200;
            if (local_1f0->verbose != false) {
              if (local_1f0->move_mode == false) {
                *(undefined4 *)((int)poVar36 + -0x24) = 0x18d28;
                emit_verbose(pcVar18,pcVar22,(char *)0x0);
              }
              else {
                *(char **)((int)poVar36 + -0x2c) = local_1f8;
                *(undefined4 *)(poVar36 + -6) = 4;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x171ff;
                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),
                                         *(char **)((int)poVar36 + -0x2c));
                *(undefined4 *)(poVar36 + -5) = 5;
                *(char **)((int)poVar36 + -0x2c) = "created directory %s\n";
                *(undefined4 *)(poVar36 + -6) = 0;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x17214;
                uVar19 = dcgettext();
                *(char **)(poVar36 + -5) = pcVar18;
                *(undefined4 *)((int)poVar36 + -0x2c) = uVar19;
                *(undefined4 *)(poVar36 + -6) = 1;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x17220;
                __printf_chk();
              }
            }
          }
          poVar42 = poVar36 + -4;
          bVar32 = local_22c != (stat *)0x0 & local_1f0->one_file_system;
          if ((bVar32 == 0) ||
             (*(__mode_t *)((int)&local_22c->st_dev + 4) == src_sb.st_dev._4_4_ &&
              *(stat **)&local_22c->st_dev == (stat *)src_sb.st_dev)) {
            local_240 = (stat64 *)&dst_back_sb;
            pcVar31 = local_1f0;
            psVar33 = (stat64 *)&dst_back_sb;
            for (iVar17 = 0x11; iVar17 != 0; iVar17 = iVar17 + -1) {
              *(char **)&psVar33->st_dev = (char *)pcVar31->backup_type;
              pcVar31 = (cp_options *)((int)pcVar31 + (uint)bVar49 * -8 + 4);
              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);
            }
            *(undefined4 *)((int)poVar36 + -0x2c) = 2;
            *(char **)(poVar36 + -6) = local_200;
            *(undefined4 *)((int)poVar36 + -0x34) = 0x1726d;
            pHVar23 = (Hash_table *)
                      savedir(*(char **)(poVar36 + -6),*(savedir_option *)((int)poVar36 + -0x2c));
            local_230 = pHVar23;
            if (pHVar23 == (Hash_table *)0x0) {
              *(char **)((int)poVar36 + -0x2c) = local_200;
              *(undefined4 *)(poVar36 + -6) = 4;
              *(undefined4 *)((int)poVar36 + -0x34) = 0x19153;
              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),
                                       *(char **)((int)poVar36 + -0x2c));
              *(undefined4 *)(poVar36 + -5) = 5;
              *(char **)((int)poVar36 + -0x2c) = "cannot access %s";
              *(undefined4 *)(poVar36 + -6) = 0;
              *(undefined4 *)((int)poVar36 + -0x34) = 0x19168;
              uVar19 = dcgettext();
              *(undefined4 *)((int)poVar36 + -0x34) = 0x1916f;
              piVar21 = __errno_location();
              *(char **)((int)poVar36 + -0x34) = pcVar18;
              *(undefined4 *)(poVar36 + -7) = uVar19;
              *(int *)((int)poVar36 + -0x3c) = *piVar21;
              *(undefined4 *)(poVar36 + -8) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)((int)poVar36 + -0x44) = &UNK_0001917c;
              error();
            }
            if (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS) {
              dst_back_sb.st_dev._4_4_ = 2;
            }
            if (*(char *)&pHVar23->bucket == '\0') {
              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);
              bVar32 = 1;
            }
            else {
              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);
              local_20c = &src_sb;
              local_234 = (stat64 *)&tmp_dst_sb;
              local_22c = (stat *)&local_copy_into_self;
              local_224 = CONCAT31(local_224._1_3_,1);
              do {
                *(undefined4 *)(poVar36 + -5) = 0;
                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;
                *(char **)(poVar36 + -6) = local_200;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x1731f;
                psVar20 = (stat *)file_name_concat(*(char **)(poVar36 + -6),
                                                   *(char **)((int)poVar36 + -0x2c),
                                                   *(char ***)(poVar36 + -5));
                *(undefined4 *)(poVar36 + -5) = 0;
                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;
                *(char **)(poVar36 + -6) = local_1f8;
                local_214 = psVar20;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x17336;
                pcVar18 = file_name_concat(*(char **)(poVar36 + -6),*(char **)((int)poVar36 + -0x2c)
                                           ,*(char ***)(poVar36 + -5));
                p_Var7 = local_208;
                cVar3 = *local_21c;
                *(undefined4 *)(poVar36 + -5) = 0;
                *(stat **)((int)poVar36 + -0x2c) = local_22c;
                *(stat64 **)(poVar36 + -6) = local_234;
                *(undefined4 *)((int)poVar36 + -0x34) = 0;
                *(stat64 **)(poVar36 + -7) = local_240;
                *(stat64 **)((int)poVar36 + -0x3c) = local_238;
                *(stat **)(poVar36 + -8) = local_20c;
                psVar20 = local_214;
                tmp_dst_sb.st_dev._0_1_ = cVar3;
                *(undefined4 *)((int)poVar36 + -0x44) = 0x1737f;
                _Var12 = copy_internal((char *)psVar20,pcVar18,SUB41(p_Var7,0),
                                       *(stat **)(poVar36 + -8),*(dir_list **)((int)poVar36 + -0x3c)
                                       ,*(cp_options **)(poVar36 + -7),
                                       *(_Bool *)((int)poVar36 + -0x34),*(_Bool **)(poVar36 + -6),
                                       *(_Bool **)((int)poVar36 + -0x2c),*(_Bool **)(poVar36 + -5));
                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & _Var12);
                *local_220 = (code)((byte)*local_220 | local_copy_into_self);
                *(char **)(poVar36 + -6) = pcVar18;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x1739d;
                free(*(void **)(poVar36 + -6));
                *(stat **)(poVar36 + -6) = local_214;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x173a9;
                free(*(void **)(poVar36 + -6));
                if (local_copy_into_self != false) break;
                local_228 = (dir_list *)
                            CONCAT31(local_228._1_3_,
                                     (byte)local_228._0_1_ | (byte)tmp_dst_sb.st_dev._0_1_);
                *(Hash_table **)(poVar36 + -6) = pHVar23;
                *(undefined4 *)((int)poVar36 + -0x34) = 0x172fe;
                sVar24 = strlen(*(char **)(poVar36 + -6));
                pHVar23 = (Hash_table *)((int)&pHVar23->bucket + sVar24 + 1);
              } while (*(char *)&pHVar23->bucket != '\0');
              bVar32 = (byte)local_224;
            }
            *(Hash_table **)(poVar36 + -6) = local_230;
            *(undefined4 *)((int)poVar36 + -0x34) = 0x173ce;
            free(*(void **)(poVar36 + -6));
            *local_21c = local_228._0_1_;
          }
          if ((byte)local_1fc != '\0') {
            bVar14 = 0;
            local_208 = (_Bool *)((uint)local_208._1_3_ << 8);
            bVar49 = false;
            local_224 = CONCAT31(local_224._1_3_,bVar32);
LAB_00016722:
            if (local_1f0->dest_info != (Hash_table *)0x0) {
              local_1fc = CONCAT31(local_1fc._1_3_,bVar49);
              *(stat **)((int)poVar42 + -8) = &dst_back_sb;
              *(char **)((int)poVar42 + -0xc) = local_1f8;
              *(undefined4 *)((int)poVar42 + -0x10) = 3;
              *(undefined4 *)((int)poVar42 + -0x14) = 0x1674c;
              iVar17 = __lxstat64(*(int *)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),
                                  *(stat64 **)((int)poVar42 + -8));
              pcVar31 = local_1f0;
              bVar49 = (byte)local_1fc;
              if (iVar17 == 0) {
                *(stat **)((int)poVar42 + -8) = &dst_back_sb;
                *(char **)((int)poVar42 + -0xc) = local_1f8;
                *(Hash_table **)((int)poVar42 + -0x10) = pcVar31->dest_info;
                *(undefined4 *)((int)poVar42 + -0x14) = 0x16772;
                record_file(*(Hash_table **)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),
                            *(stat **)((int)poVar42 + -8));
                bVar49 = (byte)local_1fc;
              }
            }
            bVar32 = (byte)local_224;
            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);
            poVar36 = poVar42;
            goto LAB_00016794;
          }
          local_208 = (_Bool *)((uint)local_208._1_3_ << 8);
          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);
          poVar36 = poVar36 + -4;
        }
        else {
LAB_0001664e:
          local_208 = (_Bool *)CONCAT31(local_208._1_3_,local_1f0->symbolic_link);
          poVar42 = poVar36;
          if (local_1f0->symbolic_link != false) {
            if (*local_200 != '/') {
              uVar47 = poVar36 < (undefined1 *)0xc;
              uVar48 = poVar36 == (off_t *)0xc;
              *(char **)(poVar36 + -2) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x1667f;
              psVar20 = (stat *)dir_name(*(char **)(poVar36 + -2));
              iVar17 = 2;
              pbVar43 = &DAT_0002c142;
              psVar46 = psVar20;
              do {
                if (iVar17 == 0) break;
                iVar17 = iVar17 + -1;
                bVar32 = (byte)psVar46->st_dev;
                uVar47 = *pbVar43 < bVar32;
                uVar48 = *pbVar43 == bVar32;
                pbVar43 = pbVar43 + (uint)bVar49 * -2 + 1;
                psVar46 = (stat *)((int)psVar46 + (uint)bVar49 * -2 + 1);
              } while ((bool)uVar48);
              if ((!(bool)uVar47 && !(bool)uVar48) != (bool)uVar47) {
                local_20c = psVar20;
                *(stat **)(poVar36 + -1) = &tmp_dst_sb;
                *(undefined1 **)((int)poVar36 + -0xc) = &DAT_0002c142;
                *(undefined4 *)(poVar36 + -2) = 3;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x17ae0;
                iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),
                                   *(stat64 **)(poVar36 + -1));
                psVar20 = local_20c;
                if (iVar17 == 0) {
                  *(stat **)(poVar36 + -1) = &dst_back_sb;
                  *(stat **)((int)poVar36 + -0xc) = psVar20;
                  *(undefined4 *)(poVar36 + -2) = 3;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x17b03;
                  iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),
                                     *(stat64 **)(poVar36 + -1));
                  psVar20 = local_20c;
                  if ((iVar17 == 0) &&
                     (((tmp_dst_sb.st_ino._4_4_ != dst_back_sb.st_ino._4_4_ ||
                        (char *)tmp_dst_sb.st_ino != (char *)dst_back_sb.st_ino ||
                       (tmp_dst_sb.st_dev._4_4_ != dst_back_sb.st_dev._4_4_)) ||
                      ((stat *)tmp_dst_sb.st_dev != (stat *)dst_back_sb.st_dev)))) {
                    *(stat **)(poVar36 + -2) = local_20c;
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b37;
                    free(*(void **)(poVar36 + -2));
                    *(char **)(poVar36 + -1) = local_1f8;
                    *(undefined4 *)((int)poVar36 + -0xc) = 3;
                    *(undefined4 *)(poVar36 + -2) = 0;
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b49;
                    pcVar22 = quotearg_n_style_colon
                                        ((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),
                                         *(char **)(poVar36 + -1));
                    *(undefined4 *)(poVar36 + -1) = 5;
                    pcVar18 = "%s: can make relative symbolic links only in current directory";
LAB_00016e8b:
                    *(char **)((int)poVar36 + -0xc) = pcVar18;
                    *(undefined4 *)(poVar36 + -2) = 0;
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x16e93;
                    uVar19 = dcgettext();
                    *(char **)((int)poVar36 + -0x14) = pcVar22;
                    *(undefined4 *)(poVar36 + -3) = uVar19;
                    *(undefined4 *)((int)poVar36 + -0x1c) = 0;
                    *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00016e9e;
                    error();
                  }
                }
              }
              *(stat **)(poVar36 + -2) = psVar20;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x166ac;
              free(*(void **)(poVar36 + -2));
            }
            *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;
            *(char **)(poVar36 + -1) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;
            *(char **)(poVar36 + -2) = local_200;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x166cf;
            iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),
                                     *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));
            bVar14 = 0;
            if (iVar17 < 0) {
              *(char **)(poVar36 + -1) = local_200;
              *(undefined4 *)((int)poVar36 + -0xc) = 4;
              *(undefined4 *)(poVar36 + -2) = 1;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x1898c;
              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),
                                         *(char **)(poVar36 + -1));
              *(char **)(poVar36 + -1) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0xc) = 4;
              *(undefined4 *)(poVar36 + -2) = 0;
              local_1f4 = pcVar18;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x189a4;
              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),
                                         *(char **)(poVar36 + -1));
              *(undefined4 *)(poVar36 + -1) = 5;
              *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s to %s";
              *(undefined4 *)(poVar36 + -2) = 0;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x189b9;
              uVar19 = dcgettext();
              *(undefined4 *)((int)poVar36 + -0x14) = 0x189c0;
              piVar21 = __errno_location();
              *(char **)(poVar36 + -2) = local_1f4;
              *(char **)((int)poVar36 + -0x14) = pcVar18;
              *(undefined4 *)(poVar36 + -3) = uVar19;
              *(int *)((int)poVar36 + -0x1c) = *piVar21;
              *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)((int)poVar36 + -0x24) = &UNK_000189d4;
              error();
            }
            goto LAB_000166da;
          }
          if (local_1f0->hard_link != false) {
            _Var12 = local_1f0->unlink_dest_after_failed_open;
            *(stat **)((int)poVar36 + -0xc) = local_20c;
            pcVar22 = local_1f8;
            bVar14 = 0;
            *(undefined4 *)(poVar36 + -2) = 0;
            pcVar18 = local_200;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18382;
            _Var12 = create_hard_link(pcVar18,pcVar22,_Var12,SUB81(poVar36[-2],0),
                                      *(_Bool *)((int)poVar36 + -0xc));
            if (_Var12) goto LAB_000166da;
LAB_00016fad:
            poVar36 = poVar42;
            if (local_1f0->preserve_security_context != false) {
LAB_000177a0:
              *(undefined4 *)((int)poVar36 + -4) = 0x177a5;
              restore_default_fscreatecon_or_die();
            }
            if (local_214 == (stat *)0x0) {
              *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;
              *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;
              *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;
              *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18325;
              forget_created(*(ino_t *)((int)poVar36 + -0x10),*(dev_t *)((int)poVar36 + -8));
            }
            goto LAB_00016fcb;
          }
          if ((local_238 == (stat64 *)0x8000) ||
             ((local_238 != (stat64 *)0xa000 & local_1f0->copy_as_regular) != 0)) {
            local_244 = src_sb.st_mode;
            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->data_copy_required);
            *(uint *)((int)poVar36 + -0xc) = (uint)(local_1f0->dereference == DEREF_NEVER) << 0x11;
            *(char **)(poVar36 + -2) = local_200;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17b97;
            local_208 = (_Bool *)open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));
            if ((int)local_208 < 0) {
              *(char **)((int)poVar36 + -0xc) = local_200;
              *(undefined4 *)(poVar36 + -2) = 4;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18d03;
              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                       *(char **)((int)poVar36 + -0xc));
              poVar41 = poVar36 + -1;
              *(undefined4 *)(poVar36 + -1) = 5;
              pcVar18 = "cannot open %s for reading";
              goto LAB_00016f90;
            }
            *(stat **)(poVar36 + -1) = &tmp_dst_sb;
            *(_Bool **)((int)poVar36 + -0xc) = local_208;
            *(undefined4 *)(poVar36 + -2) = 3;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17bbf;
            iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),
                                *(stat64 **)(poVar36 + -1));
            pcVar31 = local_1f0;
            if (iVar17 != 0) {
              *(char **)((int)poVar36 + -0xc) = local_200;
              *(undefined4 *)(poVar36 + -2) = 4;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f4d;
              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                       *(char **)((int)poVar36 + -0xc));
              *(undefined4 *)(poVar36 + -1) = 5;
              *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";
              *(undefined4 *)(poVar36 + -2) = 0;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f62;
              uVar19 = dcgettext();
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f69;
              piVar21 = __errno_location();
              *(char **)((int)poVar36 + -0x14) = pcVar18;
              *(undefined4 *)(poVar36 + -3) = uVar19;
              *(int *)((int)poVar36 + -0x1c) = *piVar21;
              goto LAB_00018b73;
            }
            if ((src_sb.st_ino._4_4_ != tmp_dst_sb.st_ino._4_4_ ||
                 (char *)src_sb.st_ino != (char *)tmp_dst_sb.st_ino) ||
               (src_sb.st_dev._4_4_ != tmp_dst_sb.st_dev._4_4_ ||
                (stat *)src_sb.st_dev != (stat *)tmp_dst_sb.st_dev)) {
              *(char **)((int)poVar36 + -0xc) = local_200;
              *(undefined4 *)(poVar36 + -2) = 4;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b5a;
              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                       *(char **)((int)poVar36 + -0xc));
              *(undefined4 *)(poVar36 + -1) = 5;
              *(char **)((int)poVar36 + -0xc) =
                   "skipping file %s, as it was replaced while being copied";
              *(undefined4 *)(poVar36 + -2) = 0;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b6f;
              uVar19 = dcgettext();
              *(char **)((int)poVar36 + -0x14) = pcVar18;
              *(undefined4 *)(poVar36 + -3) = uVar19;
              *(undefined4 *)((int)poVar36 + -0x1c) = 0;
              goto LAB_00018b73;
            }
            local_284 = (uint)local_234 & 0x1ff;
            if ((byte)local_1f4 != '\0') {
LAB_00019094:
              local_278 = local_23c;
LAB_000190a0:
              pcVar28 = (code *)(~local_278 & local_284);
              *(code **)(poVar36 + -1) = pcVar28;
              *(undefined4 *)((int)poVar36 + -0xc) = 0xc1;
              *(char **)(poVar36 + -2) = local_1f8;
              local_21c = pcVar28;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x190c8;
              pdVar29 = (dir_list *)
                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));
              local_228 = pdVar29;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x190d5;
              local_220 = (code *)__errno_location();
              iVar17 = *(int *)local_220;
              bVar32 = iVar17 == 0x11 & (byte)((uint)pdVar29 >> 0x1f);
              local_22c = (stat *)CONCAT31(local_22c._1_3_,bVar32);
              if (bVar32 == 0) {
LAB_00019445:
                bVar32 = iVar17 == 0x15 & (byte)((uint)local_228 >> 0x1f);
                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);
                if (bVar32 == 0) {
                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
                  if (-1 < (int)local_228) {
LAB_00017c81:
                    *(stat64 **)(poVar36 + -1) = (stat64 *)&dst_back_sb;
                    *(dir_list **)((int)poVar36 + -0xc) = local_228;
                    *(undefined4 *)(poVar36 + -2) = 3;
                    local_240 = (stat64 *)&dst_back_sb;
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17c9e;
                    iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),
                                        *(stat64 **)(poVar36 + -1));
                    if (iVar17 != 0) {
                      *(int *)((int)poVar36 + -4) = iVar17;
                      *(int *)(poVar36 + -1) = iVar17;
                      *(char **)((int)poVar36 + -0xc) = local_1f8;
                      *(undefined4 *)(poVar36 + -2) = 4;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x198f9;
                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                               *(char **)((int)poVar36 + -0xc));
                      *(undefined4 *)(poVar36 + -1) = 5;
                      *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";
                      *(undefined4 *)(poVar36 + -2) = 0;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1990e;
                      uVar19 = dcgettext();
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19915;
                      piVar21 = __errno_location();
                      *(char **)((int)poVar36 + -0x14) = pcVar18;
                      *(undefined4 *)(poVar36 + -3) = uVar19;
                      *(int *)((int)poVar36 + -0x1c) = *piVar21;
                      *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                      *(undefined **)((int)poVar36 + -0x24) = &UNK_00019922;
                      error();
                    }
                    uVar19 = extraout_ECX;
                    if ((byte)local_20c != '\0') {
                      if (local_1f0->reflink_mode != REFLINK_NEVER) {
                        *(cp_options **)((int)poVar36 + -4) = local_1f0;
                        *(_Bool **)(poVar36 + -1) = local_208;
                        *(undefined4 *)((int)poVar36 + -0xc) = 0x40049409;
                        *(dir_list **)(poVar36 + -2) = local_228;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19d52;
                        iVar17 = ioctl((int)poVar36[-2],*(ulong *)((int)poVar36 + -0xc));
                        uVar19 = extraout_ECX_11;
                        if (iVar17 == 0) goto LAB_000194e2;
                        if (local_1f0->reflink_mode == REFLINK_ALWAYS) {
                          *(cp_options **)((int)poVar36 + -4) = local_1f0;
                          *(char **)(poVar36 + -1) = local_200;
                          *(undefined4 *)((int)poVar36 + -0xc) = 4;
                          *(undefined4 *)(poVar36 + -2) = 1;
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d7d;
                          pcVar18 = quotearg_n_style((int)poVar36[-2],
                                                     *(quoting_style *)((int)poVar36 + -0xc),
                                                     *(char **)(poVar36 + -1));
                          *(char **)(poVar36 + -1) = local_1f8;
                          *(undefined4 *)((int)poVar36 + -0xc) = 4;
                          *(undefined4 *)(poVar36 + -2) = 0;
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d91;
                          local_20c = (stat *)quotearg_n_style((int)poVar36[-2],
                                                               *(quoting_style *)
                                                                ((int)poVar36 + -0xc),
                                                               *(char **)(poVar36 + -1));
                          *(undefined4 *)(poVar36 + -1) = 5;
                          *(char **)((int)poVar36 + -0xc) = "failed to clone %s from %s";
                          *(undefined4 *)(poVar36 + -2) = 0;
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19daa;
                          uVar19 = dcgettext();
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19db1;
                          piVar21 = __errno_location();
                          psVar20 = local_20c;
                          *(char **)(poVar36 + -2) = pcVar18;
                          *(stat **)((int)poVar36 + -0x14) = psVar20;
                          *(undefined4 *)(poVar36 + -3) = uVar19;
                          *(int *)((int)poVar36 + -0x1c) = *piVar21;
                          *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                          *(undefined **)((int)poVar36 + -0x24) = &UNK_00019dc7;
                          error();
                        }
                      }
                      *(undefined4 *)((int)poVar36 + -4) = 0x17ccd;
                      uVar26 = getpagesize();
                      uVar16 = dst_back_sb.st_blksize - 0x20000;
                      local_25c = dst_back_sb.st_blksize;
                      local_258 = (code *)dst_back_sb.st_blksize;
                      if (0x1ffe0000 < uVar16) {
                        local_258 = get_quoting_style;
                        uVar16 = 0x200;
                        if (dst_back_sb.st_blksize - 1U < 0x20000000) {
                          uVar16 = dst_back_sb.st_blksize;
                        }
                        local_25c = uVar16;
                      }
                      *(uint *)((int)poVar36 + -4) = uVar16;
                      *(uint *)(poVar36 + -1) = uVar16;
                      *(undefined4 *)((int)poVar36 + -0xc) = 2;
                      *(undefined4 *)(poVar36 + -2) = 0;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0;
                      *(undefined4 *)(poVar36 + -3) = 0;
                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;
                      *(_Bool **)(poVar36 + -4) = local_208;
                      *(undefined4 *)((int)poVar36 + -0x24) = 0x17d28;
                      fdadvise((int)poVar36[-4],*(off_t *)((int)poVar36 + -0x1c),
                               *(off_t *)((int)poVar36 + -0x14),*(fadvice_t *)((int)poVar36 + -0xc))
                      ;
                      local_21c = (code *)(tmp_dst_sb.st_mode & 0xf000);
                      bVar50 = false;
                      if ((code *)(tmp_dst_sb.st_mode & 0xf000) == (code *)0x8000) {
                        uVar16 = tmp_dst_sb.st_size._4_4_ >> 0x1f & 0x1ff;
                        iVar17 = tmp_dst_sb.st_size._4_4_ +
                                 (uint)CARRY4(uVar16,(uint)(code *)tmp_dst_sb.st_size);
                        iVar15 = iVar17 >> 9;
                        uVar16 = (uint)((uint)tmp_dst_sb.st_blocks <
                                       ((uint)((code *)tmp_dst_sb.st_size + uVar16) >> 9 |
                                       iVar17 * 0x800000));
                        iVar17 = tmp_dst_sb.st_blocks._4_4_ - iVar15;
                        bVar50 = (SBORROW4(tmp_dst_sb.st_blocks._4_4_,iVar15) !=
                                 SBORROW4(iVar17,uVar16)) != (int)(iVar17 - uVar16) < 0;
                      }
                      local_220 = (code *)(uVar26 - 1);
                      if ((dst_back_sb.st_mode & 0xf000) == 0x8000) {
                        if (local_1f0->sparse_mode != SPARSE_ALWAYS) {
                          if ((local_1f0->sparse_mode == SPARSE_AUTO) && (bVar50)) {
                            *(code **)(poVar36 + -2) = local_258 + uVar26;
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x199e0;
                            local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));
                            local_27c = (_Bool *)local_220 + (uVar26 - 1) +
                                        -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);
                            goto LAB_000199fc;
                          }
                          goto LAB_00017d9d;
                        }
                        *(code **)(poVar36 + -2) = local_258 + uVar26;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19f62;
                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));
                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +
                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);
                        if (bVar50) {
LAB_000199fc:
                          local_274 = local_1f0->sparse_mode;
                          local_285 = (byte)local_20c;
                          goto LAB_00019a18;
                        }
                        local_22c = (stat *)&local_copy_into_self;
                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);
                      }
                      else {
LAB_00017d9d:
                        local_220 = (code *)(0x7fffffff - uVar26);
                        _Var27 = tmp_dst_sb.st_blksize;
                        if (0x1ffe0000 < tmp_dst_sb.st_blksize - 0x20000U) {
                          _Var27 = 0x20000;
                        }
                        *(undefined4 *)((int)poVar36 + -4) = 0x20000;
                        *(code **)(poVar36 + -1) = (code *)(0x7fffffff - uVar26);
                        *(code **)((int)poVar36 + -0xc) = local_258;
                        *(__blksize_t *)(poVar36 + -2) = _Var27;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17dd4;
                        pcVar28 = (code *)buffer_lcm(*(size_t *)(poVar36 + -2),
                                                     *(size_t *)((int)poVar36 + -0xc),
                                                     *(size_t *)(poVar36 + -1));
                        if ((local_21c == (code *)0x8000) &&
                           (tmp_dst_sb.st_size._4_4_ <
                            (int)(uint)((code *)tmp_dst_sb.st_size < local_258))) {
                          local_258 = (code *)tmp_dst_sb.st_size + 1;
                        }
                        local_21c = pcVar28 + -1 + (int)local_258;
                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar28);
                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {
                          local_258 = pcVar28;
                        }
                        *(code **)(poVar36 + -2) = local_258 + uVar26;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17e2e;
                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));
                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +
                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);
                        if (bVar50) {
                          local_285 = '\0';
                          local_274 = SPARSE_NEVER;
LAB_00019a18:
                          pcVar28 = (code *)0x0;
                          iVar17 = 0;
                          local_21c = (code *)tmp_dst_sb.st_size;
                          *(code **)((int)poVar36 + -4) = (code *)tmp_dst_sb.st_size;
                          *(code **)(poVar36 + -1) = (code *)tmp_dst_sb.st_size;
                          *(stat **)((int)poVar36 + -0xc) = (stat *)&local_copy_into_self;
                          *(_Bool **)(poVar36 + -2) = local_208;
                          local_218 = tmp_dst_sb.st_size._4_4_;
                          local_22c = (stat *)&local_copy_into_self;
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19a4e;
                          extent_scan_init((int)poVar36[-2],*(extent_scan **)((int)poVar36 + -0xc));
                          local_280 = &_GLOBAL_OFFSET_TABLE_;
                          local_254 = (code *)0x0;
                          local_250 = 0;
                          local_24c = 0;
                          local_248 = 0;
                          do {
                            *(stat **)(poVar36 + -2) = local_22c;
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19a93;
                            _Var12 = extent_scan_read(*(extent_scan **)(poVar36 + -2));
                            ppuVar35 = local_280;
                            if (!_Var12) {
                              uVar19 = extraout_ECX_10;
                              if (local_1bf == '\0') {
                                if (local_1c0 == '\0') {
                                  *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var_00,_Var12);
                                  *(char **)(poVar36 + -1) = local_200;
                                  *(undefined4 *)((int)poVar36 + -0xc) = 3;
                                  *(undefined4 *)(poVar36 + -2) = 0;
                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1b5;
                                  pcVar18 = quotearg_n_style_colon
                                                      ((int)poVar36[-2],
                                                       *(quoting_style *)((int)poVar36 + -0xc),
                                                       *(char **)(poVar36 + -1));
                                  *(undefined4 *)(poVar36 + -1) = 5;
                                  ppuVar35 = ppuVar35 + -0x2aaf;
                                  goto LAB_00019fe6;
                                }
                                uVar26 = 0;
                                if (local_285 != '\0') {
                                  uVar26 = local_25c;
                                }
                                uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);
                                local_25c = uVar26;
                                goto LAB_00017e78;
                              }
                              break;
                            }
                            if (local_1c4 != (stat64 *)0x0) {
                              local_234 = (stat64 *)0x0;
                              local_26c = pcVar28;
                              local_264 = local_24c;
                              local_260 = local_248;
                              local_268 = iVar17;
                              do {
                                puVar1 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);
                                pcVar28 = (code *)*puVar1;
                                iVar17 = puVar1[1];
                                local_24c = puVar1[2];
                                local_248 = puVar1[3];
                                iVar34 = puVar1[3] + iVar17 + (uint)CARRY4(local_24c,(uint)pcVar28);
                                iVar15 = local_218 - iVar34;
                                if ((SBORROW4(local_218,iVar34) !=
                                    SBORROW4(iVar15,(uint)(local_21c < pcVar28 + local_24c))) !=
                                    (int)(iVar15 - (uint)(local_21c < pcVar28 + local_24c)) < 0) {
                                  if ((SBORROW4(local_218,iVar17) !=
                                      SBORROW4(local_218 - iVar17,(uint)(local_21c < pcVar28))) !=
                                      (int)((local_218 - iVar17) - (uint)(local_21c < pcVar28)) < 0)
                                  {
                                    pcVar28 = local_21c;
                                    iVar17 = local_218;
                                  }
                                  local_24c = (int)local_21c - (int)pcVar28;
                                  local_248 = (local_218 - iVar17) - (uint)(local_21c < pcVar28);
                                }
                                local_254 = (code *)(((int)pcVar28 - (int)local_26c) - local_264);
                                local_250 = (((iVar17 - local_268) - (uint)(pcVar28 < local_26c)) -
                                            local_260) -
                                            (uint)((uint)((int)pcVar28 - (int)local_26c) < local_264
                                                  );
                                local_20c = (stat *)((uint)local_20c & 0xffffff00);
                                if (local_250 != 0 || local_254 != (code *)0x0) {
                                  *(undefined4 *)((int)poVar36 + -4) = 0;
                                  *(int *)(poVar36 + -1) = iVar17;
                                  *(code **)((int)poVar36 + -0xc) = pcVar28;
                                  *(_Bool **)(poVar36 + -2) = local_208;
                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ca8;
                                  _Var51 = lseek64((int)poVar36[-2],
                                                   *(__off64_t *)((int)poVar36 + -0xc),
                                                   *(int *)((int)poVar36 + -4));
                                  pcVar18 = local_1f8;
                                  pdVar29 = local_228;
                                  if (_Var51 < 0) {
                                    *(int *)((int)poVar36 + -4) = iVar17;
                                    ppuVar35 = local_280;
                                    *(int *)(poVar36 + -1) = iVar17;
                                    *(char **)((int)poVar36 + -0xc) = local_200;
                                    *(undefined4 *)(poVar36 + -2) = 4;
                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f22;
                                    pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                                             *(char **)((int)poVar36 + -0xc));
                                    *(undefined4 *)(poVar36 + -1) = 5;
                                    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb20b);
LAB_00019f2f:
                                    *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;
                                    *(undefined4 *)(poVar36 + -2) = 0;
                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f37;
                                    uVar19 = dcgettext();
                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f3e;
                                    piVar21 = __errno_location();
                                    *(char **)((int)poVar36 + -0x14) = pcVar18;
                                    *(undefined4 *)(poVar36 + -3) = uVar19;
                                    *(int *)((int)poVar36 + -0x1c) = *piVar21;
                                    *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00019f49;
                                    error();
                                  }
                                  if (local_274 == SPARSE_NEVER) {
                                    *(undefined4 *)((int)poVar36 + -4) = 0x19d2c;
                                    _Var12 = write_zeros((int)pdVar29,*poVar36);
                                    if (!_Var12) {
                                      *(code **)((int)poVar36 + -4) = pcVar28;
                                      ppuVar35 = local_280;
                                      *(char **)(poVar36 + -1) = local_1f8;
                                      *(undefined4 *)((int)poVar36 + -0xc) = 3;
                                      *(undefined4 *)(poVar36 + -2) = 0;
                                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a193;
                                      pcVar18 = quotearg_n_style_colon
                                                          ((int)poVar36[-2],
                                                           *(quoting_style *)((int)poVar36 + -0xc),
                                                           *(char **)(poVar36 + -1));
                                      *(undefined4 *)(poVar36 + -1) = 5;
                                      ppuVar35 = ppuVar35 + -0x2c19;
                                      goto LAB_00019f2f;
                                    }
                                    uVar16 = 0;
                                    goto LAB_00019af3;
                                  }
                                  bVar50 = local_274 == SPARSE_ALWAYS;
                                  *(int *)((int)poVar36 + -0xc) = local_250;
                                  *(code **)(poVar36 + -2) = local_254;
                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ce6;
                                  _Var12 = create_hole((int)pdVar29,pcVar18,bVar50,poVar36[-2]);
                                  local_20c = (stat *)CONCAT31(local_20c._1_3_,_Var12);
                                  if (_Var12) goto LAB_00019ae0;
LAB_00019cf7:
                                  ppuVar35 = local_280;
                                  *(__uid_t *)(poVar36 + -2) = local_1bc;
                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19d0d;
                                  free(*(void **)(poVar36 + -2));
                                  bVar14 = 0;
                                  goto LAB_00018028;
                                }
LAB_00019ae0:
                                uVar16 = 0;
                                if (local_274 == SPARSE_ALWAYS) {
                                  uVar16 = local_25c;
                                }
LAB_00019af3:
                                p_Var7 = local_27c;
                                *(_Bool **)(poVar36 + -2) = &read_hole;
                                *(_Bool **)((int)poVar36 + -0x14) = &wrote_hole_at_eof;
                                pdVar29 = local_228;
                                *(int *)(poVar36 + -3) = local_248;
                                *(uint *)((int)poVar36 + -0x1c) = local_24c;
                                *(char **)(poVar36 + -4) = local_1f8;
                                *(char **)((int)poVar36 + -0x24) = local_200;
                                *(undefined4 *)(poVar36 + -5) = 1;
                                *(uint *)((int)poVar36 + -0x2c) = uVar16;
                                p_Var9 = local_208;
                                *(code **)(poVar36 + -6) = local_258;
                                *(undefined4 *)((int)poVar36 + -0x34) = 0x19b3c;
                                _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,
                                                     *(size_t *)(poVar36 + -6),
                                                     *(size_t *)((int)poVar36 + -0x2c),
                                                     SUB81(poVar36[-5],0),
                                                     *(char **)((int)poVar36 + -0x24),
                                                     *(char **)(poVar36 + -4),
                                                     *(uintmax_t *)((int)poVar36 + -0x1c),
                                                     *(off_t **)((int)poVar36 + -0x14),
                                                     *(_Bool **)(poVar36 + -2));
                                if (!_Var12) goto LAB_00019cf7;
                                local_250 = iVar17 + local_1d8 +
                                            (uint)CARRY4((uint)pcVar28,_wrote_hole_at_eof);
                                local_254 = pcVar28 + _wrote_hole_at_eof;
                                uVar47 = (byte)local_20c;
                                if (local_1d8 != 0 || _wrote_hole_at_eof != 0) {
                                  uVar47 = read_hole;
                                }
                                local_20c = (stat *)CONCAT31(local_20c._1_3_,uVar47);
                                if (local_250 == local_218 &&
                                    pcVar28 + _wrote_hole_at_eof == local_21c) {
                                  local_1bf = '\x01';
                                  break;
                                }
                                local_26c = pcVar28;
                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);
                                local_268 = iVar17;
                                local_264 = local_24c;
                                local_260 = local_248;
                              } while (local_234 < local_1c4);
                            }
                            *(__uid_t *)(poVar36 + -2) = local_1bc;
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1969a;
                            free(*(void **)(poVar36 + -2));
                            local_1bc = 0;
                            local_1c4 = (stat64 *)0x0;
                            uVar19 = extraout_ECX_05;
                          } while (local_1bf == '\0');
                          pdVar29 = local_228;
                          ppuVar35 = local_280;
                          bVar50 = true;
                          if ((SBORROW4(local_250,local_218) !=
                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==
                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {
                            bVar50 = false;
                            if ((byte)local_20c == '\0') goto LAB_00017ed4;
                          }
                          if (local_274 == SPARSE_NEVER) {
                            *(undefined4 *)((int)poVar36 + -4) = 0x1a279;
                            _Var12 = write_zeros((int)pdVar29,*poVar36);
                            iVar17 = CONCAT31(extraout_var_01,_Var12);
                            uVar19 = extraout_ECX_14;
                            if (!_Var12) goto LAB_00019fca;
                          }
                          else {
                            *(undefined4 *)((int)poVar36 + -4) = uVar19;
                            *(int *)(poVar36 + -1) = local_218;
                            *(code **)((int)poVar36 + -0xc) = local_21c;
                            *(dir_list **)(poVar36 + -2) = local_228;
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1971b;
                            iVar17 = ftruncate64((int)poVar36[-2],
                                                 *(__off64_t *)((int)poVar36 + -0xc));
                            pcVar8 = local_21c;
                            pcVar28 = local_254;
                            if (iVar17 != 0) goto LAB_00019fca;
                            uVar19 = extraout_ECX_06;
                            if ((local_274 == SPARSE_ALWAYS) && (bVar50)) {
                              *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_00;
                              iVar17 = local_250;
                              *(undefined4 *)(poVar36 + -1) = extraout_EDX_00;
                              *(uint *)((int)poVar36 + -0xc) =
                                   (local_218 - iVar17) - (uint)(pcVar8 < pcVar28);
                              *(int *)(poVar36 + -2) = (int)pcVar8 - (int)pcVar28;
                              *(int *)((int)poVar36 + -0x14) = iVar17;
                              *(code **)(poVar36 + -3) = pcVar28;
                              *(undefined4 *)((int)poVar36 + -0x1c) = 3;
                              *(dir_list **)(poVar36 + -4) = local_228;
                              *(undefined4 *)((int)poVar36 + -0x24) = 0x1976c;
                              iVar15 = fallocate64((int)poVar36[-4],*(int *)((int)poVar36 + -0x1c),
                                                   poVar36[-3],poVar36[-2]);
                              uVar19 = extraout_ECX_07;
                              if (iVar15 < 0) {
                                *(undefined4 *)((int)poVar36 + -4) = 0x1977c;
                                piVar21 = __errno_location();
                                uVar19 = extraout_ECX_08;
                                if ((*piVar21 != 0x26) && (*piVar21 != 0x5f)) {
                                  *(int *)((int)poVar36 + -4) = iVar17;
                                  *(int *)(poVar36 + -1) = iVar17;
                                  *(char **)((int)poVar36 + -0xc) = local_1f8;
                                  *(undefined4 *)(poVar36 + -2) = 4;
                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197a1;
                                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                                           *(char **)((int)poVar36 + -0xc));
                                  *(undefined4 *)(poVar36 + -1) = 5;
                                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb1fb;
                                  *(undefined4 *)(poVar36 + -2) = 0;
                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197b6;
                                  uVar19 = dcgettext();
                                  *(char **)((int)poVar36 + -0x14) = pcVar18;
                                  *(undefined4 *)(poVar36 + -3) = uVar19;
                                  *(int *)((int)poVar36 + -0x1c) = *piVar21;
                                  *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000197c1;
                                  error();
                                }
                              }
                            }
                          }
                          goto LAB_00017ed4;
                        }
                        local_25c = 0;
                        local_22c = (stat *)&local_copy_into_self;
                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);
                      }
LAB_00017e78:
                      p_Var7 = local_27c;
                      *(_Bool **)(poVar36 + -2) = &wrote_hole_at_eof;
                      pdVar29 = local_228;
                      *(stat **)((int)poVar36 + -0x14) = local_22c;
                      *(undefined4 *)(poVar36 + -3) = 0xffffffff;
                      *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;
                      *(char **)(poVar36 + -4) = local_1f8;
                      *(char **)((int)poVar36 + -0x24) = local_200;
                      *(uint *)(poVar36 + -5) = uVar16;
                      *(uint *)((int)poVar36 + -0x2c) = local_25c;
                      p_Var9 = local_208;
                      *(code **)(poVar36 + -6) = local_258;
                      *(undefined4 *)((int)poVar36 + -0x34) = 0x17ebc;
                      _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,*(size_t *)(poVar36 + -6)
                                           ,*(size_t *)((int)poVar36 + -0x2c),SUB81(poVar36[-5],0),
                                           *(char **)((int)poVar36 + -0x24),*(char **)(poVar36 + -4)
                                           ,*(uintmax_t *)((int)poVar36 + -0x1c),
                                           *(off_t **)((int)poVar36 + -0x14),
                                           *(_Bool **)(poVar36 + -2));
                      if (_Var12) {
                        uVar19 = extraout_ECX_00;
                        if (wrote_hole_at_eof != false) {
                          *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var,_Var12);
                          *(undefined4 *)(poVar36 + -1) = local_1d0;
                          *(undefined4 *)((int)poVar36 + -0xc) = _local_copy_into_self;
                          *(dir_list **)(poVar36 + -2) = local_228;
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19fbf;
                          iVar17 = ftruncate64((int)poVar36[-2],*(__off64_t *)((int)poVar36 + -0xc))
                          ;
                          uVar19 = extraout_ECX_13;
                          if (iVar17 < 0) {
LAB_00019fca:
                            *(int *)((int)poVar36 + -4) = iVar17;
                            *(int *)(poVar36 + -1) = iVar17;
                            *(char **)((int)poVar36 + -0xc) = local_1f8;
                            *(undefined4 *)(poVar36 + -2) = 4;
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fd9;
                            pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                                     *(char **)((int)poVar36 + -0xc));
                            *(undefined4 *)(poVar36 + -1) = 5;
                            ppuVar35 = (undefined **)((int)ppuVar35 + -0xb053);
LAB_00019fe6:
                            *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;
                            *(undefined4 *)(poVar36 + -2) = 0;
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fee;
                            uVar19 = dcgettext();
                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19ff5;
                            piVar21 = __errno_location();
                            *(char **)((int)poVar36 + -0x14) = pcVar18;
                            *(undefined4 *)(poVar36 + -3) = uVar19;
                            *(int *)((int)poVar36 + -0x1c) = *piVar21;
                            *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                            *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a002;
                            error();
                          }
                        }
                        goto LAB_00017ed4;
                      }
LAB_000197c4:
                      bVar14 = 0;
                      goto LAB_00018028;
                    }
LAB_000194e2:
                    local_220 = (code *)0x0;
LAB_00017ed4:
                    if (local_1f0->preserve_timestamps != false) {
                      timespec[0].tv_sec = src_sb.st_atim.tv_sec;
                      timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;
                      timespec[1].tv_sec = src_sb.st_mtim.tv_sec;
                      timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;
                      *(__syscall_slong_t *)((int)poVar36 + -4) = src_sb.st_mtim.tv_nsec;
                      *(timespec **)(poVar36 + -1) = timespec;
                      *(char **)((int)poVar36 + -0xc) = local_1f8;
                      *(dir_list **)(poVar36 + -2) = local_228;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1988f;
                      iVar17 = fdutimens((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),
                                         *(timespec **)(poVar36 + -1));
                      uVar19 = extraout_ECX_09;
                      if (iVar17 != 0) {
                        *(int *)((int)poVar36 + -4) = iVar17;
                        *(int *)(poVar36 + -1) = iVar17;
                        *(char **)((int)poVar36 + -0xc) = local_1f8;
                        *(undefined4 *)(poVar36 + -2) = 4;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198a9;
                        pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                                 *(char **)((int)poVar36 + -0xc));
                        *(undefined4 *)(poVar36 + -1) = 5;
                        *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;
                        *(undefined4 *)(poVar36 + -2) = 0;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198be;
                        uVar19 = dcgettext();
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198c5;
                        piVar21 = __errno_location();
                        *(char **)((int)poVar36 + -0x14) = pcVar18;
                        *(undefined4 *)(poVar36 + -3) = uVar19;
                        *(int *)((int)poVar36 + -0x1c) = *piVar21;
                        *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                        *(undefined **)((int)poVar36 + -0x24) = &UNK_000198d0;
                        error();
                      }
                    }
                    pcVar18 = local_1f8;
                    pdVar29 = local_228;
                    if ((local_1f0->preserve_ownership != false) &&
                       ((src_sb.st_uid != dst_back_sb.st_uid ||
                        (dst_back_sb.st_uid = dst_back_sb.st_gid,
                        src_sb.st_gid != dst_back_sb.st_gid)))) {
                      *(__uid_t *)((int)poVar36 + -4) = dst_back_sb.st_uid;
                      uVar16 = (uint)local_1f4 & 0xff;
                      *(stat64 **)(poVar36 + -1) = local_240;
                      *(uint *)((int)poVar36 + -0xc) = uVar16;
                      *(stat **)(poVar36 + -2) = &src_sb;
                      pcVar31 = local_1f0;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x17f33;
                      iVar17 = set_owner(pcVar31,pcVar18,(int)pdVar29,*(stat **)(poVar36 + -2),
                                         *(_Bool *)((int)poVar36 + -0xc),*(stat **)(poVar36 + -1));
                      if (iVar17 == -1) goto LAB_000197c4;
                      uVar19 = extraout_ECX_01;
                      if (iVar17 == 0) {
                        local_244 = local_244 & 0xfffff1ff;
                      }
                    }
                    if (local_1f0->preserve_xattr == false) {
LAB_0001950b:
                      bVar14 = 1;
                    }
                    else {
                      pcVar31 = local_1f0;
                      if ((dst_back_sb.st_mode & 0x80) == 0) {
                        *(undefined4 *)((int)poVar36 + -4) = 0x19e80;
                        pcVar31 = (cp_options *)geteuid();
                        pcVar18 = local_1f8;
                        pdVar29 = local_228;
                        if (pcVar31 == (cp_options *)0x0) goto LAB_00017f67;
                        *(undefined4 *)((int)poVar36 + -4) = 0x19ea0;
                        iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,0x180);
                        pcVar22 = local_1f8;
                        p_Var7 = local_208;
                        uVar16 = CONCAT31((int3)((uint)iVar17 >> 8),iVar17 == 0);
                        *(uint *)((int)poVar36 + -4) = uVar16;
                        *(uint *)(poVar36 + -1) = uVar16;
                        pcVar18 = local_200;
                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;
                        *(dir_list **)(poVar36 + -2) = pdVar29;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19ec7;
                        bVar14 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],
                                           *(cp_options **)((int)poVar36 + -0xc));
                        uVar19 = extraout_ECX_12;
                        if (!(bool)bVar14) goto LAB_00017f99;
                      }
                      else {
LAB_00017f67:
                        pcVar22 = local_1f8;
                        p_Var7 = local_208;
                        *(cp_options **)((int)poVar36 + -4) = pcVar31;
                        *(cp_options **)(poVar36 + -1) = pcVar31;
                        pcVar18 = local_200;
                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;
                        *(dir_list **)(poVar36 + -2) = local_228;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17f8c;
                        _Var12 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],
                                           *(cp_options **)((int)poVar36 + -0xc));
                        uVar16 = (uint)_Var12;
                        uVar19 = extraout_ECX_02;
                        if (_Var12) goto LAB_0001950b;
LAB_00017f99:
                        local_20c = (stat *)CONCAT31(local_20c._1_3_,
                                                     local_1f0->require_preserve_xattr);
                        bVar14 = local_1f0->require_preserve_xattr ^ 1;
                      }
                      pcVar18 = local_1f8;
                      pdVar29 = local_228;
                      if ((char)uVar16 != '\0') {
                        uVar16 = ~local_278 & local_284;
                        *(undefined4 *)((int)poVar36 + -4) = 0x17fd3;
                        fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);
                        uVar19 = extraout_ECX_03;
                      }
                    }
                    pcVar31 = local_1f0;
                    if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {
                      if (local_1f0->set_mode == false) {
                        bVar49 = (byte)local_1f4 & local_1f0->explicit_no_preserve_mode;
                        if (bVar49 == 0) {
                          if (local_278 != 0) {
                            *(undefined4 *)((int)poVar36 + -4) = 0x1a00f;
                            mVar30 = cached_umask();
                            pcVar18 = local_1f8;
                            pdVar29 = local_228;
                            uVar16 = local_284;
                            if ((local_278 & ~mVar30) != 0) {
                              *(undefined4 *)((int)poVar36 + -4) = 0x1a034;
                              iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);
                              if (iVar17 != 0) {
                                *(int *)((int)poVar36 + -4) = iVar17;
                                *(int *)(poVar36 + -1) = iVar17;
                                *(char **)((int)poVar36 + -0xc) = local_1f8;
                                *(undefined4 *)(poVar36 + -2) = 4;
                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a04b;
                                local_21c = (code *)quotearg_style(*(quoting_style *)(poVar36 + -2),
                                                                   *(char **)((int)poVar36 + -0xc));
                                *(undefined4 *)(poVar36 + -1) = 5;
                                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;
                                *(undefined4 *)(poVar36 + -2) = 0;
                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a064;
                                local_20c = (stat *)dcgettext();
                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a06f;
                                piVar21 = __errno_location();
                                psVar20 = local_20c;
                                *(code **)((int)poVar36 + -0x14) = local_21c;
                                *(stat **)(poVar36 + -3) = psVar20;
                                *(int *)((int)poVar36 + -0x1c) = *piVar21;
                                *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                                *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a086;
                                error();
                              }
                            }
                          }
                        }
                        else {
                          local_20c = (stat *)((uint)local_20c & 0xffffff00);
                          *(undefined4 *)((int)poVar36 + -4) = 0x1a1d2;
                          mVar30 = cached_umask();
                          *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_01;
                          *(mode_t *)(poVar36 + -1) = ~mVar30 & 0x1b6;
                          *(dir_list **)((int)poVar36 + -0xc) = local_228;
                          *(char **)(poVar36 + -2) = local_1f8;
                          *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1ec;
                          iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),
                                           *(mode_t *)(poVar36 + -1));
                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar49);
                          if (iVar17 != 0) {
                            bVar14 = (byte)local_20c;
                          }
                        }
                      }
                      else {
                        *(undefined4 *)((int)poVar36 + -4) = uVar19;
                        *(mode_t *)(poVar36 + -1) = pcVar31->mode;
                        *(dir_list **)((int)poVar36 + -0xc) = local_228;
                        *(char **)(poVar36 + -2) = local_1f8;
                        *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0e8;
                        iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),
                                         *(mode_t *)(poVar36 + -1));
                        if (iVar17 != 0) {
                          bVar14 = 0;
                        }
                      }
                    }
                    else {
                      *(uint *)(poVar36 + -2) = local_244;
                      *(dir_list **)((int)poVar36 + -0x14) = local_228;
                      *(char **)(poVar36 + -3) = local_1f8;
                      *(_Bool **)((int)poVar36 + -0x1c) = local_208;
                      *(char **)(poVar36 + -4) = local_200;
                      *(undefined4 *)((int)poVar36 + -0x24) = 0x1961d;
                      iVar17 = copy_acl(*(char **)(poVar36 + -4),*(int *)((int)poVar36 + -0x1c),
                                        *(char **)(poVar36 + -3),*(int *)((int)poVar36 + -0x14),
                                        *(mode_t *)(poVar36 + -2));
                      if ((iVar17 != 0) && (local_1f0->require_preserve != false)) {
                        bVar14 = 0;
                      }
                    }
                    goto LAB_00018028;
                  }
                }
                else {
                  iVar17 = 0x15;
                  if (*local_1f8 != '\0') {
                    uVar16 = 0xffffffff;
                    pcVar18 = local_1f8;
                    do {
                      if (uVar16 == 0) break;
                      uVar16 = uVar16 - 1;
                      cVar13 = *pcVar18;
                      pcVar18 = pcVar18 + (uint)bVar49 * -2 + 1;
                    } while (cVar13 != '\0');
                    iVar17 = (local_1f8[~uVar16 - 2] != '/') + 0x14;
                  }
                }
              }
              else {
                iVar17 = 0x11;
                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);
                if (local_1f0->move_mode == false) {
                  *(uint *)((int)poVar36 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar32);
                  *(stat **)(poVar36 + -1) = &dst_back_sb;
                  *(char **)((int)poVar36 + -0xc) = local_1f8;
                  *(undefined4 *)(poVar36 + -2) = 3;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x193f6;
                  iVar15 = __lxstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),
                                      *(stat64 **)(poVar36 + -1));
                  if ((iVar15 == 0) && ((dst_back_sb.st_mode & 0xf000) == 0xa000)) {
                    uVar16 = (uint)local_1f0->open_dangling_dest_symlink;
                    if (local_1f0->open_dangling_dest_symlink == false) {
                      *(uint *)((int)poVar36 + -4) = uVar16;
                      *(uint *)(poVar36 + -1) = uVar16;
                      *(char **)((int)poVar36 + -0xc) = local_1f8;
                      *(undefined4 *)(poVar36 + -2) = 4;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a217;
                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                               *(char **)((int)poVar36 + -0xc));
                      *(undefined4 *)(poVar36 + -1) = 5;
                      *(char **)((int)poVar36 + -0xc) = "not writing through dangling symlink %s";
                      *(undefined4 *)(poVar36 + -2) = 0;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a22c;
                      uVar19 = dcgettext();
                      *(char **)((int)poVar36 + -0x14) = pcVar18;
                      *(undefined4 *)(poVar36 + -3) = uVar19;
                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;
                      *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                      *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a237;
                      error();
                    }
                    *(uint *)((int)poVar36 + -4) = uVar16;
                    *(code **)(poVar36 + -1) = local_21c;
                    *(undefined4 *)((int)poVar36 + -0xc) = 0x41;
                    *(char **)(poVar36 + -2) = local_1f8;
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19434;
                    local_228 = (dir_list *)
                                open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));
                    iVar17 = *(int *)local_220;
                  }
                  goto LAB_00019445;
                }
              }
LAB_00019116:
              *(char **)((int)poVar36 + -0xc) = local_1f8;
              *(undefined4 *)(poVar36 + -2) = 4;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x19126;
              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                       *(char **)((int)poVar36 + -0xc));
              *(undefined4 *)(poVar36 + -1) = 5;
              *(char **)((int)poVar36 + -0xc) = "cannot create regular file %s";
              *(undefined4 *)(poVar36 + -2) = 0;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x1913b;
              uVar19 = dcgettext();
              *(char **)((int)poVar36 + -0x14) = pcVar18;
              *(undefined4 *)(poVar36 + -3) = uVar19;
              *(int *)((int)poVar36 + -0x1c) = iVar17;
LAB_00018b73:
              *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b7c;
              error();
            }
            *(uint *)((int)poVar36 + -0xc) =
                 (-(uint)(local_1f0->data_copy_required == false) & 0xfffffe00) + 0x201;
            *(char **)(poVar36 + -2) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x17c4d;
            local_228 = (dir_list *)
                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));
            pcVar10 = local_1f0;
            if ((pcVar31->set_security_context == false) &&
               (pcVar31->preserve_security_context == false)) {
              if (-1 < (int)local_228) goto LAB_00017c77;
LAB_0001926b:
              *(undefined4 *)((int)poVar36 + -4) = 0x19270;
              piVar21 = __errno_location();
              if (local_1f0->unlink_dest_after_failed_open == false) {
                iVar17 = *piVar21;
                if ((iVar17 == 2) && (local_1f0->move_mode == false)) {
                  local_278 = 0;
                  goto LAB_000190a0;
                }
                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);
                goto LAB_00019116;
              }
              *(char **)(poVar36 + -2) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x19290;
              iVar17 = unlink(*(char **)(poVar36 + -2));
              if (iVar17 != 0) {
                *(cp_options **)((int)poVar36 + -4) = pcVar31;
                *(cp_options **)(poVar36 + -1) = pcVar31;
                *(char **)((int)poVar36 + -0xc) = local_1f8;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a104;
                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                *(undefined4 *)(poVar36 + -1) = 5;
                *(char **)((int)poVar36 + -0xc) = "cannot remove %s";
                *(undefined4 *)(poVar36 + -2) = 0;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a119;
                uVar19 = dcgettext();
                *(char **)((int)poVar36 + -0x14) = pcVar18;
                *(undefined4 *)(poVar36 + -3) = uVar19;
                *(int *)((int)poVar36 + -0x1c) = *piVar21;
                goto LAB_00018b73;
              }
              if (local_1f0->verbose != false) {
                *(undefined4 *)((int)poVar36 + -4) = extraout_ECX_04;
                *(undefined4 *)(poVar36 + -1) = extraout_ECX_04;
                *(char **)((int)poVar36 + -0xc) = local_1f8;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0aa;
                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                *(undefined4 *)(poVar36 + -1) = 5;
                *(char **)((int)poVar36 + -0xc) = "removed %s\n";
                *(undefined4 *)(poVar36 + -2) = 0;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0bf;
                uVar19 = dcgettext();
                *(char **)(poVar36 + -1) = pcVar18;
                *(undefined4 *)((int)poVar36 + -0xc) = uVar19;
                *(undefined4 *)(poVar36 + -2) = 1;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0cb;
                __printf_chk();
              }
              local_278 = local_23c;
              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->set_security_context);
              if (local_1f0->set_security_context == false) goto LAB_000190a0;
              *(cp_options **)(poVar36 + -2) = local_1f0;
              *(undefined4 *)((int)poVar36 + -0x14) = 1;
              *(uint *)(poVar36 + -3) = local_284;
              *(char **)((int)poVar36 + -0x1c) = local_1f8;
              *(char **)(poVar36 + -4) = local_200;
              *(undefined4 *)((int)poVar36 + -0x24) = 0x192f1;
              bVar14 = set_process_security_ctx
                                 (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),
                                  *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),
                                  *(cp_options **)(poVar36 + -2));
              if ((bool)bVar14) goto LAB_00019094;
              local_220 = (code *)0x0;
            }
            else {
              if ((int)local_228 < 0) goto LAB_0001926b;
              _Var12 = local_1f0->preserve_security_context;
              *(cp_options **)((int)poVar36 + -4) = local_1f0;
              *(undefined4 *)(poVar36 + -1) = 0;
              *(uint *)((int)poVar36 + -0xc) = (uint)_Var12;
              *(char **)(poVar36 + -2) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x1952e;
              bVar14 = set_file_security_ctx
                                 (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),
                                  SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));
              if ((bool)bVar14) {
LAB_00017c77:
                local_278 = 0;
                goto LAB_00017c81;
              }
              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,pcVar10->require_preserve_context);
              if (pcVar10->require_preserve_context == false) goto LAB_00017c77;
              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);
              local_220 = (code *)0x0;
LAB_00018028:
              *(dir_list **)(poVar36 + -2) = local_228;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18036;
              iVar17 = close((int)poVar36[-2]);
              if (iVar17 < 0) {
                *(int *)((int)poVar36 + -4) = iVar17;
                *(int *)(poVar36 + -1) = iVar17;
                *(char **)((int)poVar36 + -0xc) = local_1f8;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1964e;
                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                *(undefined4 *)(poVar36 + -1) = 5;
                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;
                *(undefined4 *)(poVar36 + -2) = 0;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x19663;
                uVar19 = dcgettext();
                *(undefined4 *)((int)poVar36 + -0x14) = 0x1966a;
                piVar21 = __errno_location();
                *(char **)((int)poVar36 + -0x14) = pcVar18;
                *(undefined4 *)(poVar36 + -3) = uVar19;
                *(int *)((int)poVar36 + -0x1c) = *piVar21;
                *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                *(undefined **)((int)poVar36 + -0x24) = &UNK_00019677;
                error();
              }
            }
            *(_Bool **)(poVar36 + -2) = local_208;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18056;
            iVar17 = close((int)poVar36[-2]);
            if (iVar17 < 0) {
              *(char **)((int)poVar36 + -0xc) = local_200;
              *(undefined4 *)(poVar36 + -2) = 4;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e7e;
              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                       *(char **)((int)poVar36 + -0xc));
              *(undefined4 *)(poVar36 + -1) = 5;
              *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;
              *(undefined4 *)(poVar36 + -2) = 0;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e93;
              uVar19 = dcgettext();
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e9a;
              piVar21 = __errno_location();
              *(char **)((int)poVar36 + -0x14) = pcVar18;
              *(undefined4 *)(poVar36 + -3) = uVar19;
              *(int *)((int)poVar36 + -0x1c) = *piVar21;
              *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018ea5;
              error();
            }
            *(code **)(poVar36 + -2) = local_220;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x1806f;
            free(*(void **)(poVar36 + -2));
            local_208 = (_Bool *)((uint)local_208 & 0xffffff00);
            if (bVar14 == 0) goto LAB_00016fad;
          }
          else {
            bVar14 = 0;
            if (local_238 == (stat64 *)0x1000) {
              dst_back_sb.st_dev._0_4_ = (stat *)0x0;
              dst_back_sb.st_dev._4_4_ = 0;
              uVar16 = ~local_23c & local_204;
              *(stat **)((int)poVar36 + -4) = &dst_back_sb;
              *(uint *)(poVar36 + -1) = uVar16;
              *(char **)((int)poVar36 + -0xc) = local_1f8;
              *(undefined4 *)(poVar36 + -2) = 1;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18dbe;
              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),
                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));
              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);
              if (iVar17 != 0) {
                *(uint *)((int)poVar36 + -0xc) = uVar16 & 0xffffefff;
                *(char **)(poVar36 + -2) = local_1f8;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x18de5;
                iVar17 = mkfifo(*(char **)(poVar36 + -2),*(__mode_t *)((int)poVar36 + -0xc));
                local_208 = (_Bool *)((uint)local_208 & 0xffffff00);
                if (iVar17 != 0) {
                  *(int *)((int)poVar36 + -4) = iVar17;
                  *(int *)(poVar36 + -1) = iVar17;
                  *(char **)((int)poVar36 + -0xc) = local_1f8;
                  *(undefined4 *)(poVar36 + -2) = 4;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18e07;
                  pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                           *(char **)((int)poVar36 + -0xc));
                  poVar41 = poVar36 + -1;
                  *(undefined4 *)(poVar36 + -1) = 5;
                  pcVar18 = "cannot create fifo %s";
                  goto LAB_00016f90;
                }
              }
            }
            else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {
              dst_back_sb.st_dev._0_4_ = (stat *)src_sb.st_rdev;
              *(stat **)((int)poVar36 + -4) = &dst_back_sb;
              dst_back_sb.st_dev._4_4_ = src_sb.st_rdev._4_4_;
              *(uint *)(poVar36 + -1) = ~local_23c & local_204;
              *(char **)((int)poVar36 + -0xc) = local_1f8;
              *(undefined4 *)(poVar36 + -2) = 1;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x16f59;
              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),
                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));
              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);
              if (iVar17 != 0) {
                *(char **)((int)poVar36 + -0xc) = local_1f8;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x16f7c;
                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                poVar41 = poVar36 + -1;
                *(undefined4 *)(poVar36 + -1) = 5;
                pcVar18 = "cannot create special file %s";
                goto LAB_00016f90;
              }
            }
            else {
              if (local_238 != (stat64 *)0xa000) {
                *(char **)((int)poVar36 + -0xc) = local_200;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x18e30;
                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                *(undefined4 *)(poVar36 + -1) = 5;
                pcVar18 = "%s has unknown file type";
                goto LAB_00016e8b;
              }
              *(undefined4 *)((int)poVar36 + -0xc) = (undefined4)src_sb.st_size;
              *(char **)(poVar36 + -2) = local_200;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a38;
              pcVar18 = areadlink_with_size(*(char **)(poVar36 + -2),
                                            *(size_t *)((int)poVar36 + -0xc));
              if (pcVar18 == (char *)0x0) {
                *(undefined4 *)((int)poVar36 + -4) = 0;
                *(undefined4 *)(poVar36 + -1) = 0;
                *(char **)((int)poVar36 + -0xc) = local_200;
                *(undefined4 *)(poVar36 + -2) = 4;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x194d0;
                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                         *(char **)((int)poVar36 + -0xc));
                poVar41 = poVar36 + -1;
                *(undefined4 *)(poVar36 + -1) = 5;
                pcVar18 = "cannot read symbolic link %s";
                goto LAB_00016f90;
              }
              *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;
              *(char **)(poVar36 + -1) = local_1f8;
              *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;
              *(char **)(poVar36 + -2) = pcVar18;
              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a5e;
              iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),
                                       *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));
              if (iVar17 < 0) {
                *(undefined4 *)((int)poVar36 + -4) = 0x19315;
                piVar21 = __errno_location();
                local_208 = (_Bool *)*piVar21;
                if ((_Bool *)*piVar21 == (_Bool *)0x0) goto LAB_00018a69;
                if (((local_1f0->update != true) || ((byte)local_1f4 != '\0')) ||
                   ((dst_sb.st_mode & 0xf000) != 0xa000)) {
LAB_0001933e:
                  *(char **)(poVar36 + -2) = pcVar18;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19347;
                  free(*(void **)(poVar36 + -2));
                  *(char **)((int)poVar36 + -0xc) = local_1f8;
                  *(undefined4 *)(poVar36 + -2) = 4;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19356;
                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),
                                           *(char **)((int)poVar36 + -0xc));
                  *(undefined4 *)(poVar36 + -1) = 5;
                  *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s";
                  *(undefined4 *)(poVar36 + -2) = 0;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1936b;
                  uVar19 = dcgettext();
                  *(char **)((int)poVar36 + -0x14) = pcVar18;
                  *(undefined4 *)(poVar36 + -3) = uVar19;
                  *(_Bool **)((int)poVar36 + -0x1c) = local_208;
                  *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                  *(undefined **)((int)poVar36 + -0x24) = &UNK_0001937a;
                  error();
                }
                uVar16 = 0xffffffff;
                pcVar22 = pcVar18;
                do {
                  if (uVar16 == 0) break;
                  uVar16 = uVar16 - 1;
                  cVar13 = *pcVar22;
                  pcVar22 = pcVar22 + (uint)bVar49 * -2 + 1;
                } while (cVar13 != '\0');
                iVar17 = ~uVar16 - 1;
                if ((dst_sb.st_size._4_4_ != 0) || ((int)dst_sb.st_size != iVar17))
                goto LAB_0001933e;
                *(int *)((int)poVar36 + -4) = iVar17;
                *(int *)(poVar36 + -1) = iVar17;
                *(int *)((int)poVar36 + -0xc) = (int)dst_sb.st_size;
                *(char **)(poVar36 + -2) = local_1f8;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e2b;
                pcVar22 = areadlink_with_size(*(char **)(poVar36 + -2),
                                              *(size_t *)((int)poVar36 + -0xc));
                if (pcVar22 == (char *)0x0) goto LAB_0001933e;
                *(char **)((int)poVar36 + -4) = pcVar22;
                *(char **)(poVar36 + -1) = pcVar22;
                *(char **)((int)poVar36 + -0xc) = pcVar18;
                *(char **)(poVar36 + -2) = pcVar22;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e41;
                iVar17 = strcmp(*(char **)(poVar36 + -2),*(char **)((int)poVar36 + -0xc));
                if (iVar17 != 0) {
                  *(char **)(poVar36 + -2) = pcVar22;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a12b;
                  free(*(void **)(poVar36 + -2));
                  goto LAB_0001933e;
                }
                *(char **)(poVar36 + -2) = pcVar22;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e55;
                free(*(void **)(poVar36 + -2));
                *(char **)(poVar36 + -2) = pcVar18;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e5d;
                free(*(void **)(poVar36 + -2));
              }
              else {
LAB_00018a69:
                *(char **)(poVar36 + -2) = pcVar18;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x18a72;
                free(*(void **)(poVar36 + -2));
              }
              if (local_1f0->preserve_security_context != false) {
                *(undefined4 *)((int)poVar36 + -4) = 0x193dc;
                restore_default_fscreatecon_or_die();
              }
              local_208 = (_Bool *)CONCAT31(local_208._1_3_,1);
              _Var12 = local_1f0->preserve_ownership;
              bVar14 = _Var12;
              if (_Var12 != false) {
                *(__gid_t *)(poVar36 + -1) = src_sb.st_gid;
                *(__uid_t *)((int)poVar36 + -0xc) = src_sb.st_uid;
                *(char **)(poVar36 + -2) = local_1f8;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x18aba;
                iVar17 = lchown(*(char **)(poVar36 + -2),*(__uid_t *)((int)poVar36 + -0xc),
                                *(__gid_t *)(poVar36 + -1));
                if (iVar17 == 0) {
                  bVar14 = 0;
                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);
                }
                else {
                  *(cp_options **)(poVar36 + -2) = local_1f0;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18ad3;
                  _Var12 = chown_failure_ok(*(cp_options **)(poVar36 + -2));
                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);
                  if (!_Var12) {
                    *(char **)((int)poVar36 + -4) = pcVar18;
                    *(undefined4 *)(poVar36 + -1) = 5;
                    *(char **)((int)poVar36 + -0xc) = "failed to preserve ownership for %s";
                    *(undefined4 *)(poVar36 + -2) = 0;
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19574;
                    uVar19 = dcgettext();
                    *(undefined4 *)((int)poVar36 + -0x14) = 0x1957b;
                    piVar21 = __errno_location();
                    *(char **)((int)poVar36 + -0x14) = local_1f8;
                    *(undefined4 *)(poVar36 + -3) = uVar19;
                    *(int *)((int)poVar36 + -0x1c) = *piVar21;
                    *(undefined4 *)(poVar36 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                    *(undefined **)((int)poVar36 + -0x24) = &UNK_0001958b;
                    error();
                  }
                  bVar14 = 0;
                }
              }
            }
          }
LAB_000166da:
          bVar49 = local_238 != (stat64 *)0x4000;
          if ((byte)local_1f4 == '\0') {
            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->copy_as_regular);
            _Var12 = (_Bool)((local_1f0->copy_as_regular ^ 1U) & bVar49);
            if (_Var12 != false) {
              _Var4 = local_1f0->preserve_security_context;
              if ((local_1f0->set_security_context != false) || (bVar49 = _Var12, _Var4 != false)) {
                *(cp_options **)((int)poVar36 + -4) = local_1f0;
                *(undefined4 *)(poVar36 + -1) = 0;
                *(uint *)((int)poVar36 + -0xc) = (uint)_Var4;
                *(char **)(poVar36 + -2) = local_1f8;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x177d2;
                bVar49 = set_file_security_ctx
                                   (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),
                                    SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));
                if (!(bool)bVar49) {
                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->require_preserve_context);
                  bVar49 = _Var12;
                  if (local_1f0->require_preserve_context != false) goto LAB_00016fad;
                }
              }
            }
          }
          bVar32 = 1;
          if ((byte)local_1fc != '\0') {
            local_24c = local_24c & 0xffffff00;
            goto LAB_00016722;
          }
LAB_00016794:
          if (((local_1f0->hard_link != false) && (bVar49 != 0)) || (bVar14 != 0))
          goto LAB_0001614a;
        }
        if (local_1f0->preserve_timestamps == false) {
LAB_00016870:
          if ((char)local_208 == '\0') goto LAB_0001687d;
          if (local_1f0->preserve_xattr == false) goto LAB_0001614a;
          *(cp_options **)((int)poVar36 + -0xc) = local_1f0;
          pcVar22 = local_1f8;
          pcVar18 = local_200;
          *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x17511;
          _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),
                             *(cp_options **)((int)poVar36 + -0xc));
          if (_Var12) goto LAB_0001614a;
          cVar13 = local_1f0->require_preserve_xattr;
        }
        else {
          timespec[0].tv_sec = src_sb.st_atim.tv_sec;
          timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;
          timespec[1].tv_sec = src_sb.st_mtim.tv_sec;
          timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;
          if ((char)local_208 != '\0') {
            *(timespec **)((int)poVar36 + -0xc) = timespec;
            *(char **)((int)poVar36 + -0x10) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x16805;
            iVar17 = lutimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));
            if (iVar17 != 0) {
              *(undefined4 *)((int)poVar36 + -4) = 0x16811;
              piVar21 = __errno_location();
              if (*piVar21 != 0x26) goto LAB_00016816;
            }
            goto LAB_00016870;
          }
          *(timespec **)((int)poVar36 + -0xc) = timespec;
          *(char **)((int)poVar36 + -0x10) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0x14) = 0x18652;
          iVar17 = utimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));
          if (iVar17 != 0) {
LAB_00016816:
            *(char **)((int)poVar36 + -0xc) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0x10) = 4;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x16826;
            pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),
                                     *(char **)((int)poVar36 + -0xc));
            *(undefined4 *)((int)poVar36 + -8) = 5;
            *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;
            *(undefined4 *)((int)poVar36 + -0x10) = 0;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x1683b;
            local_1fc = dcgettext();
            *(undefined4 *)((int)poVar36 + -0x14) = 0x16846;
            piVar21 = __errno_location();
            uVar16 = local_1fc;
            *(char **)((int)poVar36 + -0x14) = pcVar18;
            *(uint *)((int)poVar36 + -0x18) = uVar16;
            *(int *)((int)poVar36 + -0x1c) = *piVar21;
            *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
            *(undefined **)((int)poVar36 + -0x24) = &UNK_00016857;
            error();
          }
LAB_0001687d:
          pcVar18 = local_1f8;
          if ((local_1f0->preserve_ownership != false) &&
             ((((byte)local_1f4 != '\0' || (src_sb.st_uid != dst_sb.st_uid)) ||
              (src_sb.st_gid != dst_sb.st_gid)))) {
            *(stat **)((int)poVar36 + -8) = &dst_sb;
            *(uint *)((int)poVar36 + -0xc) = (uint)local_1f4 & 0xff;
            *(stat **)((int)poVar36 + -0x10) = &src_sb;
            pcVar31 = local_1f0;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x168d3;
            iVar17 = set_owner(pcVar31,pcVar18,-1,*(stat **)((int)poVar36 + -0x10),
                               *(_Bool *)((int)poVar36 + -0xc),*(stat **)((int)poVar36 + -8));
            if (iVar17 == -1) goto LAB_00016148;
            if (iVar17 == 0) {
              local_204 = local_204 & 0xfffff1ff;
            }
          }
          if (local_1f0->preserve_xattr != false) {
            *(cp_options **)((int)poVar36 + -0xc) = local_1f0;
            pcVar22 = local_1f8;
            pcVar18 = local_200;
            *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18c76;
            _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),
                               *(cp_options **)((int)poVar36 + -0xc));
            if ((!_Var12) && (local_1f0->require_preserve_xattr != false)) goto LAB_00016148;
          }
          if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {
            if (local_1f0->set_mode == false) {
              if ((local_1f0->explicit_no_preserve_mode & (byte)local_1f4) == 0) {
                if (local_23c == 0) {
LAB_0001694e:
                  if ((byte)local_224 == '\0') goto LAB_0001614a;
                }
                else {
                  *(undefined4 *)((int)poVar36 + -4) = 0x191ba;
                  mVar30 = cached_umask();
                  local_23c = local_23c & ~mVar30;
                  if (local_23c == 0) goto LAB_0001694e;
                  if ((byte)local_224 != '\x01') {
                    if ((byte)local_1f4 != '\0') {
                      *(mode_t *)((int)poVar36 + -4) = ~mVar30;
                      *(stat **)((int)poVar36 + -8) = &dst_sb;
                      *(char **)((int)poVar36 + -0xc) = local_1f8;
                      *(undefined4 *)((int)poVar36 + -0x10) = 3;
                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19977;
                      iVar17 = __lxstat64(*(int *)((int)poVar36 + -0x10),
                                          *(char **)((int)poVar36 + -0xc),
                                          *(stat64 **)((int)poVar36 + -8));
                      if (iVar17 != 0) {
                        *(int *)((int)poVar36 + -4) = iVar17;
                        *(int *)((int)poVar36 + -8) = iVar17;
                        puVar37 = (undefined4 *)((int)poVar36 + -0xc);
                        *(char **)((int)poVar36 + -0xc) = local_1f8;
                        goto LAB_0001620e;
                      }
                    }
                    local_270 = dst_sb.st_mode;
                    if ((local_23c & ~dst_sb.st_mode) == 0) goto LAB_0001614a;
                  }
                }
                *(uint *)((int)poVar36 + -0xc) = local_270 | local_23c;
                *(char **)((int)poVar36 + -0x10) = local_1f8;
                *(undefined4 *)((int)poVar36 + -0x14) = 0x16976;
                iVar17 = chmod(*(char **)((int)poVar36 + -0x10),*(__mode_t *)((int)poVar36 + -0xc));
                if (iVar17 != 0) {
                  *(int *)((int)poVar36 + -4) = iVar17;
                  *(int *)((int)poVar36 + -8) = iVar17;
                  *(char **)((int)poVar36 + -0xc) = local_1f8;
                  *(undefined4 *)((int)poVar36 + -0x10) = 4;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x16990;
                  pcVar22 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),
                                           *(char **)((int)poVar36 + -0xc));
                  *(undefined4 *)((int)poVar36 + -8) = 5;
                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;
                  *(undefined4 *)((int)poVar36 + -0x10) = 0;
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169a5;
                  local_1f4 = (char *)dcgettext();
                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169b0;
                  piVar21 = __errno_location();
                  pcVar18 = local_1f4;
                  *(char **)((int)poVar36 + -0x14) = pcVar22;
                  *(char **)((int)poVar36 + -0x18) = pcVar18;
                  *(int *)((int)poVar36 + -0x1c) = *piVar21;
                  *(undefined4 *)((int)poVar36 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000169c1;
                  error();
                }
                goto LAB_0001614a;
              }
              uVar16 = 0x1b6;
              if ((local_204 & 0x7000) == 0x4000) {
                uVar16 = 0x1ff;
              }
              *(undefined4 *)((int)poVar36 + -4) = 0x191a8;
              mVar30 = cached_umask();
              *(mode_t *)((int)poVar36 + -8) = ~mVar30 & uVar16;
            }
            else {
              *(mode_t *)((int)poVar36 + -8) = local_1f0->mode;
            }
            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffffff;
            *(char **)((int)poVar36 + -0x10) = local_1f8;
            *(undefined4 *)((int)poVar36 + -0x14) = 0x18ece;
            iVar17 = set_acl(*(char **)((int)poVar36 + -0x10),*(int *)((int)poVar36 + -0xc),
                             *(mode_t *)((int)poVar36 + -8));
            if (iVar17 == 0) goto LAB_0001614a;
            goto LAB_00016148;
          }
          *(uint *)((int)poVar36 + -0x10) = local_204;
          *(undefined4 *)((int)poVar36 + -0x14) = 0xffffffff;
          *(char **)((int)poVar36 + -0x18) = local_1f8;
          *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;
          *(char **)((int)poVar36 + -0x20) = local_200;
          *(undefined4 *)((int)poVar36 + -0x24) = 0x183b6;
          iVar17 = copy_acl(*(char **)((int)poVar36 + -0x20),*(int *)((int)poVar36 + -0x1c),
                            *(char **)((int)poVar36 + -0x18),*(int *)((int)poVar36 + -0x14),
                            *(mode_t *)((int)poVar36 + -0x10));
          if (iVar17 == 0) goto LAB_0001614a;
          cVar13 = local_1f0->require_preserve;
        }
        if (cVar13 == '\0') goto LAB_0001614a;
      }
    }
  }
LAB_00016148:
  bVar32 = 0;
LAB_0001614a:
  if (iVar2 == *(int *)(in_GS_OFFSET + 0x14)) {
    return (_Bool)bVar32;
  }
                    /* WARNING: Subroutine does not return */
  *(undefined4 *)((int)poVar36 + -4) = 0x19855;
  __stack_chk_fail_local();
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Type propagation algorithm not settling */

uint __regparm3
FUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,
            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)

{
  code cVar1;
  byte bVar2;
  bool bVar3;
  bool bVar4;
  __mode_t _Var5;
  char cVar6;
  byte bVar7;
  int iVar8;
  uint uVar9;
  int iVar10;
  undefined4 uVar11;
  undefined4 uVar12;
  byte *pbVar13;
  int *piVar14;
  undefined4 uVar15;
  size_t sVar16;
  byte **ppbVar17;
  char *pcVar18;
  code *pcVar19;
  char *pcVar20;
  uint uVar21;
  uint uVar22;
  int *piVar23;
  code *pcVar24;
  undefined4 extraout_ECX;
  undefined4 extraout_ECX_00;
  undefined4 extraout_ECX_01;
  undefined4 extraout_ECX_02;
  undefined4 extraout_ECX_03;
  undefined4 extraout_ECX_04;
  undefined4 extraout_ECX_05;
  undefined4 extraout_ECX_06;
  undefined4 extraout_ECX_07;
  undefined4 extraout_ECX_08;
  undefined4 extraout_ECX_09;
  undefined4 extraout_ECX_10;
  undefined4 extraout_ECX_11;
  undefined4 extraout_ECX_12;
  undefined4 extraout_ECX_13;
  undefined4 extraout_ECX_14;
  byte bVar25;
  stat64 *psVar26;
  undefined4 extraout_EDX;
  undefined4 extraout_EDX_00;
  int iVar27;
  undefined **ppuVar28;
  undefined1 *puVar29;
  undefined1 *puVar30;
  undefined1 *puVar31;
  undefined1 *puVar32;
  undefined1 *puVar33;
  undefined1 *puVar34;
  byte *pbVar35;
  byte *pbVar36;
  undefined4 *puVar37;
  int in_GS_OFFSET;
  undefined1 uVar38;
  undefined1 uVar39;
  byte bVar40;
  __off64_t _Var41;
  undefined8 uVar42;
  undefined1 auStack_28c [7];
  char local_285;
  uint local_284;
  undefined **local_280;
  int local_27c;
  uint local_278;
  int local_274;
  uint local_270;
  code *local_26c;
  int local_268;
  uint local_264;
  int local_260;
  code *local_25c;
  code *local_258;
  code *local_254;
  int local_250;
  uint local_24c;
  int local_248;
  uint local_244;
  stat64 *local_240;
  uint local_23c;
  stat64 *local_238;
  stat64 *local_234;
  char *local_230;
  __ino_t *local_22c;
  int *local_228;
  __ino_t local_224;
  code *local_220;
  code *local_21c;
  int local_218;
  byte **local_214;
  __ino_t local_210;
  byte *local_20c;
  undefined1 *local_208;
  uint local_204;
  char *local_200;
  uint local_1fc;
  char *local_1f8;
  char *local_1f4;
  int *local_1f0;
  undefined1 local_1dd;
  uint local_1dc;
  int local_1d8;
  __ino_t local_1d4;
  undefined4 local_1d0;
  stat64 *local_1c4;
  char local_1c0;
  char local_1bf;
  int local_1bc;
  undefined1 local_1b4 [36];
  __ino_t local_190;
  undefined4 local_188;
  __time_t local_174;
  long local_170;
  __time_t local_16c;
  long local_168;
  int local_15c;
  uint local_158;
  stat64 local_154;
  undefined1 local_f4 [48];
  int local_c4;
  int local_c0;
  uint local_bc;
  int local_b8;
  int local_9c;
  uint local_98;
  stat64 local_94;
  __time_t local_30;
  long local_2c;
  __time_t local_28;
  long local_24;
  int local_20;
  undefined4 uStack_14;
  
  bVar40 = 0;
  uStack_14 = 0x15deb;
  ppuVar28 = &__DT_PLTGOT;
  local_200 = param_1;
  local_1f8 = param_2;
  local_22c = param_4;
  local_220 = (code *)param_9;
  local_21c = param_8;
  local_228 = param_5;
  local_208 = param_10;
  local_1f0 = param_6;
  local_1fc = param_7;
  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);
  local_224 = CONCAT31(local_224._1_3_,(char)param_7);
  local_20 = *(int *)(in_GS_OFFSET + 0x14);
  *param_9 = 0;
  iVar10 = param_6[0xd];
  if ((char)param_6[6] != '\0') {
    if (-1 < iVar10) {
LAB_00015e6f:
      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);
      if (local_208 != (undefined1 *)0x0) {
        *local_208 = iVar10 == 0;
      }
      goto LAB_00015e8b;
    }
    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);
    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);
    if (iVar10 != 0) {
      piVar14 = __errno_location();
      iVar10 = *piVar14;
      goto LAB_00015e6f;
    }
    if (local_208 != (undefined1 *)0x0) {
      *local_208 = 1;
    }
LAB_000161c0:
    if (*(char *)((int)local_1f0 + 0x31) != '\0') {
      iVar10 = 0;
      goto LAB_00015ef0;
    }
    iVar10 = 0;
    iVar8 = local_1f0[1];
    pcVar20 = local_1f8;
joined_r0x00015eac:
    if (iVar8 == 2) {
      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);
    }
    else {
      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);
    }
    if (iVar8 == 0) {
      local_204 = local_1b4._16_4_;
      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {
        FUN_00020540();
        if (*(char *)((int)local_1f0 + 0x19) == '\0') {
          dcgettext();
        }
        else {
          dcgettext();
        }
                    /* WARNING: Subroutine does not return */
        error();
      }
      goto LAB_00015ef0;
    }
    puVar30 = &stack0xfffffd68;
LAB_0001620e:
    *(undefined4 *)(puVar30 + -4) = 4;
    *(undefined4 *)(puVar30 + -8) = 0x16215;
    uVar11 = FUN_00020540();
    puVar31 = puVar30 + 4;
    *(undefined4 *)(puVar30 + 4) = 5;
    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);
LAB_00016222:
    *(undefined ***)(puVar31 + -4) = ppuVar28;
    *(undefined4 *)(puVar31 + -8) = 0;
    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;
    uVar12 = dcgettext();
    *(undefined4 *)(puVar31 + -0xc) = 0x16231;
    piVar14 = __errno_location();
    *(undefined4 *)(puVar31 + -0xc) = uVar11;
    *(undefined4 *)(puVar31 + -0x10) = uVar12;
    *(int *)(puVar31 + -0x14) = *piVar14;
    *(undefined4 *)(puVar31 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;
    error();
  }
LAB_00015e8b:
  if (iVar10 == 0) goto LAB_000161c0;
  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {
    iVar8 = local_1f0[1];
    pcVar20 = local_200;
    goto joined_r0x00015eac;
  }
LAB_00015ef0:
  puVar32 = auStack_28c;
  puVar29 = auStack_28c;
  puVar34 = auStack_28c;
  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {
    local_20c = local_1b4;
    if (((local_204 & 0xf000) != 0x4000) &&
       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {
      FUN_00020540();
      uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
      error(0,0,uVar11);
    }
    FUN_0001d1d0();
  }
  local_20c = (byte *)0x1;
  if (local_1f0[1] != 4) {
    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);
  }
  if ((byte)local_1f4 == '\0') {
    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {
      uVar9 = local_204 & 0xf000;
      if (uVar9 == 0x8000) {
LAB_00016b80:
        iVar8 = 0x100;
        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);
        if (((((char)local_1f0[6] == '\0') &&
             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),
             (char)local_1f0[0xb] == '\0')) &&
            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),
            *(char *)((int)local_1f0 + 0x17) == '\0')) &&
           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {
          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));
          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;
        }
      }
      else {
        iVar8 = 0x100;
        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;
        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);
        if (bVar25 == 0) goto LAB_00016b80;
      }
      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);
      if (iVar8 == 0) {
        local_230 = (char *)((uint)local_230 & 0xffffff00);
      }
      else {
        piVar14 = __errno_location();
        if (*piVar14 == 0x28) {
          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;
          local_230 = (char *)((uint)local_230._1_3_ << 8);
        }
        else {
          local_230 = (char *)CONCAT31(local_230._1_3_,1);
          if (*piVar14 != 2) {
LAB_00017070:
            local_1f0 = piVar14;
            FUN_00020540();
            uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
            error(0,*local_1f0,uVar11);
          }
        }
        local_214 = (byte **)((uint)local_214 & 0xffffff00);
        if (iVar10 != 0x11) {
          uVar38 = local_230._0_1_;
          local_230 = (char *)0x0;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);
          puVar34 = auStack_28c;
          goto LAB_00016259;
        }
      }
      if (local_1f0[2] == 2) goto LAB_00016048;
      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&
         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&
          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {
        cVar6 = *(char *)((int)local_1f0 + 0x17);
        if (cVar6 == '\0') {
          if (local_1f0[1] == 2) {
            bVar3 = true;
            bVar4 = true;
            goto LAB_000175fc;
          }
          local_234 = (stat64 *)local_f4;
          iVar10 = __lxstat64(3,local_1f8,local_234);
          if (iVar10 == 0) {
            local_240 = &local_94;
            iVar10 = __lxstat64(3,local_200,local_240);
            if ((iVar10 == 0) &&
               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&
                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&
                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,
                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||
                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;
          }
LAB_000181e8:
          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);
          goto LAB_00016048;
        }
LAB_00018440:
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);
        goto LAB_00016048;
      }
      if (local_1f0[1] != 2) goto LAB_00016048;
      bVar3 = false;
      bVar4 = false;
LAB_000175fc:
      local_234 = &local_154;
      psVar26 = (stat64 *)local_1b4;
      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {
LAB_0001761e:
        if (*local_1f0 != 0) {
          if (bVar3) {
            bVar25 = FUN_00020ea0();
            bVar25 = bVar25 ^ 1;
            cVar6 = '\0';
            goto LAB_00018431;
          }
          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||
              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))
          goto LAB_000181e8;
          goto LAB_00017680;
        }
        cVar6 = (char)local_1f0[6];
        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {
          if ((psVar26->st_mode & 0xf000) != 0xa000) {
LAB_0001847d:
            local_238 = (stat64 *)local_234->st_mode;
            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {
LAB_0001849c:
              cVar6 = (char)local_1f0[6];
            }
            else {
LAB_000187a8:
              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||
                   (int)psVar26->st_ino != (int)local_234->st_ino) ||
                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||
                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;
              cVar6 = *(char *)((int)local_1f0 + 0x17);
              if (cVar6 != '\0') goto LAB_00018440;
              cVar6 = (char)local_1f0[6];
            }
            goto LAB_000184a6;
          }
        }
        else {
          local_238 = (stat64 *)local_234->st_mode;
          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;
          if ((bVar3) && (1 < local_234->st_nlink)) {
            local_238 = psVar26;
            cVar6 = FUN_00020ea0();
            if (cVar6 != '\0') {
              psVar26 = local_238;
              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;
              goto LAB_0001849c;
            }
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));
            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;
            cVar6 = '\0';
            goto LAB_00018431;
          }
          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;
LAB_000184a6:
          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&
              (1 < local_234->st_nlink)) &&
             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,
             pcVar20 != (char *)0x0)) {
            bVar25 = FUN_00020ea0();
            bVar25 = bVar25 ^ 1;
            free(pcVar20);
            cVar6 = '\0';
            goto LAB_00018431;
          }
        }
        if (((char)local_1f0[0xb] == '\0') ||
           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)
           ) {
          if (local_1f0[1] != 2) goto LAB_00017680;
          if ((psVar26->st_mode & 0xf000) == 0xa000) {
            iVar10 = __xstat64(3,local_200,&local_94);
            if (iVar10 != 0) goto LAB_00016048;
          }
          else {
            ppbVar17 = (byte **)&local_94;
            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {
              *ppbVar17 = *(byte **)&psVar26->st_dev;
              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);
              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;
            }
          }
          local_238 = (stat64 *)local_234->st_mode;
          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {
            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);
            if (iVar10 != 0) goto LAB_00016048;
          }
          else {
            psVar26 = local_234;
            puVar37 = (undefined4 *)local_f4;
            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {
              *puVar37 = (int)psVar26->st_dev;
              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);
              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;
            }
          }
          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&
             (local_94.st_dev._4_4_ == local_f4._4_4_ &&
              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {
            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);
          }
        }
        goto LAB_00016048;
      }
      cVar6 = FUN_00020ea0();
      if (cVar6 == '\0') {
        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));
        cVar6 = '\x01';
        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;
LAB_00018431:
        if (bVar25 != 0) goto LAB_00018440;
      }
LAB_00017680:
      FUN_000203c0();
      FUN_000203c0();
LAB_000176b3:
      uVar11 = dcgettext();
      goto LAB_000176c0;
    }
    local_230 = (char *)((uint)local_230 & 0xffffff00);
    local_214 = (byte **)((uint)local_214._1_3_ << 8);
LAB_00016048:
    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {
      if ((char)local_1f0[6] != '\0') goto LAB_00017420;
      if ((local_204 & 0xf000) != 0x4000) {
LAB_00016ca2:
        puVar34 = auStack_28c;
        if ((local_1f0[2] == 2) ||
           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))
        goto LAB_00016570;
      }
LAB_00016cbd:
      puVar34 = auStack_28c;
      if ((byte)local_1f4 == '\0') {
        uVar9 = local_204 & 0xf000;
        if ((local_154.st_mode & 0xf000) != 0x4000) {
          if (uVar9 == 0x4000) {
            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {
              FUN_000203c0();
              FUN_000203c0();
              goto LAB_000176b3;
            }
            if ((byte)local_1fc != '\0') goto LAB_00016d0d;
            goto LAB_00017827;
          }
          iVar10 = *local_1f0;
          iVar8 = iVar10;
          if ((byte)local_1fc == '\0') goto LAB_00016d69;
LAB_00016d0d:
          if (iVar10 != 3) {
            cVar6 = FUN_0001d250();
            if (cVar6 != '\0') {
              FUN_000203c0();
              FUN_000203c0();
              goto LAB_000176b3;
            }
            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;
            goto LAB_00016d61;
          }
          iVar10 = 3;
          iVar8 = 3;
          if ((char)local_1f0[6] != '\0') goto LAB_00017827;
LAB_00018700:
          pcVar20 = (char *)FUN_0001d030();
          if (*pcVar20 == '.') {
            bVar3 = false;
LAB_00018ca5:
            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||
               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;
            if (bVar3) goto LAB_0001785b;
          }
          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;
LAB_0001785b:
          if (iVar8 != 3) {
            local_230 = (char *)strlen(pcVar20);
            local_234 = (stat64 *)FUN_0001d030();
            sVar16 = strlen((char *)local_234);
            local_238 = (stat64 *)&DAT_00039770;
            local_1f4 = DAT_00039770;
            local_23c = strlen(DAT_00039770);
            if (((local_230 == (char *)(local_23c + sVar16)) &&
                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&
               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {
              sVar16 = strlen(local_1f8);
              pcVar20 = (char *)FUN_00022ed0();
              local_1f4 = *(char **)&local_238->st_dev;
              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);
              strcpy(pcVar18,local_1f4);
              iVar10 = __xstat64(3,pcVar20,&local_94);
              free(pcVar20);
              if (((iVar10 == 0) &&
                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&
                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&
                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {
                uVar11 = dcgettext();
                FUN_000203c0();
                FUN_000203c0();
LAB_000176c0:
                    /* WARNING: Subroutine does not return */
                error(0,0,uVar11);
              }
            }
          }
          pcVar20 = (char *)FUN_0001c300();
          local_230 = pcVar20;
          if (pcVar20 == (char *)0x0) {
            piVar14 = __errno_location();
            iVar10 = 0x11;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
            puVar34 = auStack_28c;
            if (*piVar14 != 2) {
              FUN_00020540();
              uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
              error(0,*piVar14,uVar11);
            }
          }
          else {
            sVar16 = strlen(pcVar20);
            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);
            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;
            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;
            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;
            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;
            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),
                                     *(void **)(&stack0xfffffd68 + iVar8),
                                     *(size_t *)(&stack0xfffffd6c + iVar8));
            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;
            iVar10 = 0x11;
            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;
            free(*(void **)(&stack0xfffffd64 + iVar8));
            local_230 = pcVar18;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
            puVar34 = auStack_28c + iVar8;
          }
          goto LAB_00016259;
        }
        if (uVar9 != 0x4000) {
LAB_0001828c:
          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {
            FUN_00020540();
            uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
            error(0,0,uVar11);
          }
LAB_00017827:
          iVar8 = iVar10;
          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {
LAB_0001892a:
            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;
            if (iVar8 == 0) {
              FUN_00020700();
              FUN_00020700();
              goto LAB_000176b3;
            }
          }
LAB_0001783f:
          pcVar20 = (char *)FUN_0001d030();
          if (*pcVar20 == '.') {
            bVar3 = true;
            goto LAB_00018ca5;
          }
          goto LAB_0001785b;
        }
LAB_00016d61:
        iVar8 = *local_1f0;
LAB_00016d69:
        if ((char)local_1f0[6] != '\0') {
          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;
LAB_00018756:
          if (iVar8 != 0) goto LAB_0001783f;
LAB_00016da2:
          uVar38 = local_230._0_1_;
          iVar10 = 0x11;
          local_230 = (char *)0x0;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);
          puVar34 = auStack_28c;
          goto LAB_00016259;
        }
        bVar3 = false;
        if (iVar8 != 0) goto LAB_00018700;
LAB_00016d83:
        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||
           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&
             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&
            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;
        iVar10 = unlink(local_1f8);
        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {
          local_1f0 = piVar14;
          FUN_00020540();
          uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
          error(0,*local_1f0,uVar11);
        }
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));
        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
          iVar10 = 0x11;
          FUN_00020540();
          dcgettext();
          __printf_chk();
          local_230 = (char *)0x0;
          puVar34 = auStack_28c;
          goto LAB_00016259;
        }
        if ((byte)local_1fc != '\0') {
          iVar10 = 0x11;
          local_230 = (char *)local_1f0[0xf];
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);
          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;
          local_230 = (char *)0x0;
          iVar10 = 0x11;
          goto LAB_00016277;
        }
        iVar10 = 0x11;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
        local_230 = (char *)0x0;
        puVar29 = auStack_28c;
        goto LAB_00016356;
      }
LAB_00016570:
      puVar29 = puVar34;
      uVar9 = 1;
      goto LAB_0001614a;
    }
    if ((local_204 & 0xf000) == 0x4000) {
      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;
LAB_00017420:
      iVar10 = local_1f0[2];
      if ((iVar10 != 2) &&
         (((iVar10 != 3 &&
           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||
            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))
      goto LAB_00016cbd;
      puVar34 = auStack_28c;
      if (local_208 != (undefined1 *)0x0) {
        *local_208 = 1;
        puVar34 = auStack_28c;
      }
      goto LAB_00016570;
    }
    iVar10 = FUN_00021ee0();
    if (iVar10 < 0) {
      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;
      goto LAB_00017420;
    }
    if (local_208 != (undefined1 *)0x0) {
      *local_208 = 1;
    }
    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);
    puVar34 = auStack_28c;
    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))
    goto LAB_00016570;
    puVar29 = auStack_28c;
    if (*(char *)((int)local_1f0 + 0x25) != '\0') {
      FUN_00015060();
      puVar29 = auStack_28c;
    }
    goto LAB_00016148;
  }
  local_214 = (byte **)((uint)local_214._1_3_ << 8);
  local_230 = (char *)0x0;
LAB_00016259:
  puVar32 = puVar34;
  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {
LAB_00016338:
    puVar29 = puVar32;
    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {
LAB_00016b18:
      if ((local_204 & 0xf000) != 0x4000) {
        *(undefined4 *)(puVar29 + -4) = 0x16b45;
        FUN_00014d30();
      }
    }
    if (iVar10 == 0) {
      if ((char)local_1f0[6] != '\0') goto LAB_00016524;
      goto LAB_000165a0;
    }
LAB_00016356:
    uVar9 = local_158;
    iVar8 = local_15c;
    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {
      local_214 = (byte **)local_1b4._0_4_;
      local_210 = local_1b4._4_4_;
      if ((byte)local_1fc == '\0') {
        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;
        *(byte ***)(puVar29 + -8) = local_214;
        *(uint *)(puVar29 + -0xc) = uVar9;
        *(int *)(puVar29 + -0x10) = iVar8;
        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;
        local_214 = (byte **)FUN_0001a550();
      }
      else {
        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;
        *(byte ***)(puVar29 + -0x14) = local_214;
        *(uint *)(puVar29 + -0x18) = uVar9;
        *(int *)(puVar29 + -0x1c) = iVar8;
        *(char **)(puVar29 + -0x20) = local_1f8;
        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;
        local_214 = (byte **)FUN_0001a5c0();
      }
      if (local_214 != (byte **)0x0) {
LAB_000163d3:
        *(byte ***)(puVar29 + -0xc) = local_214;
        *(char **)(puVar29 + -0x10) = local_200;
        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;
        cVar6 = FUN_00020ea0();
        if (cVar6 != '\0') {
          *(undefined4 *)(puVar29 + -8) = DAT_00039764;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;
          uVar11 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = DAT_00039768;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;
          uVar12 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;
          uVar15 = dcgettext();
          *(undefined4 *)(puVar29 + -0x10) = uVar11;
          *(undefined4 *)(puVar29 + -0x14) = uVar12;
          *(undefined4 *)(puVar29 + -0x18) = uVar15;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;
          error();
        }
        *(byte ***)(puVar29 + -0xc) = local_214;
        *(char **)(puVar29 + -0x10) = local_1f8;
        *(undefined4 *)(puVar29 + -0x14) = 0x16406;
        cVar6 = FUN_00020ea0();
        if (cVar6 != '\0') {
          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;
          *(undefined4 *)(puVar29 + -0x10) = 4;
          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;
          uVar11 = FUN_00020540();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;
          uVar12 = dcgettext();
          *(undefined4 *)(puVar29 + -0x14) = uVar11;
          *(undefined4 *)(puVar29 + -0x18) = uVar12;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;
          error();
        }
        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {
          *(byte ***)(puVar29 + -8) = local_214;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;
          uVar11 = FUN_000203c0();
          *(char **)(puVar29 + -8) = local_1f8;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;
          uVar12 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;
          uVar15 = dcgettext();
          *(undefined4 *)(puVar29 + -0x10) = uVar11;
          *(undefined4 *)(puVar29 + -0x14) = uVar12;
          *(undefined4 *)(puVar29 + -0x18) = uVar15;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;
          error();
        }
      }
LAB_00016438:
      cVar6 = (char)local_1f0[6];
LAB_00016afb:
      if (cVar6 == '\0') {
LAB_00016b03:
        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);
      }
      else {
LAB_00016495:
        if (iVar10 == 0x11) {
          *(char **)(puVar29 + -0xc) = local_1f8;
          *(char **)(puVar29 + -0x10) = local_200;
          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;
          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));
          if (iVar10 != 0) {
            *(undefined4 *)(puVar29 + -4) = 0x174cc;
            piVar14 = __errno_location();
            iVar10 = *piVar14;
            if (iVar10 != 0) goto LAB_0001649e;
          }
LAB_00016524:
          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
            *(undefined4 *)(puVar29 + -8) = 5;
            *(char **)(puVar29 + -0xc) = "renamed ";
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x18223;
            uVar11 = dcgettext();
            *(undefined4 *)(puVar29 + -0xc) = uVar11;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;
            __printf_chk();
            *(undefined4 *)(puVar29 + -0x14) = 0x18244;
            FUN_00014d30();
          }
          if (*(char *)((int)local_1f0 + 0x21) != '\0') {
            *(int **)(puVar29 + -4) = local_1f0;
            *(undefined4 *)(puVar29 + -8) = 1;
            *(undefined4 *)(puVar29 + -0xc) = 0;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x18208;
            FUN_00015960();
          }
          if (local_208 != (undefined1 *)0x0) {
            *local_208 = 1;
          }
          puVar34 = puVar29;
          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {
            *(undefined1 **)(puVar29 + -8) = local_1b4;
            piVar14 = local_1f0;
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(int *)(puVar29 + -0x10) = piVar14[0xf];
            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;
            FUN_0001d1d0();
            uVar9 = local_1fc & 0xff;
            goto LAB_0001614a;
          }
          goto LAB_00016570;
        }
LAB_0001649e:
        if (iVar10 == 0x16) {
          *(undefined4 *)(puVar29 + -8) = DAT_00039764;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;
          uVar11 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = DAT_00039768;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x185de;
          uVar12 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;
          uVar15 = dcgettext();
          *(undefined4 *)(puVar29 + -0x10) = uVar11;
          *(undefined4 *)(puVar29 + -0x14) = uVar12;
          *(undefined4 *)(puVar29 + -0x18) = uVar15;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;
          error();
        }
        if (iVar10 != 0x12) {
          *(char **)(puVar29 + -8) = local_1f8;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;
          uVar11 = FUN_000203c0();
          *(char **)(puVar29 + -8) = local_200;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          local_1f0 = (int *)uVar11;
          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;
          uVar11 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;
          uVar12 = dcgettext();
          *(int **)(puVar29 + -0x10) = local_1f0;
          *(undefined4 *)(puVar29 + -0x14) = uVar11;
          *(undefined4 *)(puVar29 + -0x18) = uVar12;
          *(int *)(puVar29 + -0x1c) = iVar10;
          goto LAB_00017594;
        }
        uVar9 = local_204 & 0xf000;
        if (uVar9 == 0x4000) {
          *(char **)(puVar29 + -0x10) = local_1f8;
          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;
          iVar10 = rmdir(*(char **)(puVar29 + -0x10));
          if (iVar10 != 0) {
            *(undefined4 *)(puVar29 + -4) = 0x1826e;
            piVar14 = __errno_location();
            if (*piVar14 != 2) goto LAB_00017548;
          }
        }
        else {
          *(char **)(puVar29 + -0x10) = local_1f8;
          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;
          iVar10 = unlink(*(char **)(puVar29 + -0x10));
          if (iVar10 != 0) {
            *(undefined4 *)(puVar29 + -4) = 0x1753d;
            piVar14 = __errno_location();
            if (*piVar14 != 2) {
LAB_00017548:
              *(char **)(puVar29 + -8) = local_1f8;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 1;
              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;
              uVar11 = FUN_000203c0();
              *(char **)(puVar29 + -8) = local_200;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              local_1f0 = (int *)uVar11;
              *(undefined4 *)(puVar29 + -0x14) = 0x17572;
              uVar11 = FUN_000203c0();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) =
                   "inter-device move failed: %s to %s; unable to remove target";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x17587;
              uVar12 = dcgettext();
              *(int **)(puVar29 + -0x10) = local_1f0;
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
LAB_00017594:
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;
              error();
            }
          }
          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);
          if (bVar25 != 0) {
            *(undefined4 *)(puVar29 + -8) = 5;
            *(char **)(puVar29 + -0xc) = "copied ";
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;
            uVar11 = dcgettext();
            *(undefined4 *)(puVar29 + -0xc) = uVar11;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;
            __printf_chk();
            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;
            FUN_00014d30();
            local_208 = (undefined1 *)0x1;
            goto LAB_000165b7;
          }
        }
        local_208 = (undefined1 *)0x1;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
      }
      goto LAB_000165b7;
    }
    cVar6 = (char)local_1f0[6];
    if (cVar6 == '\0') {
      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;
      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;
      local_214 = (byte **)0x0;
      goto LAB_00016b03;
    }
    if (local_1b4._20_4_ != 1) {
      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))
      {
LAB_00016ac0:
        if ((1 < (uint)local_1b4._20_4_) ||
           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||
            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {
          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;
          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;
          *(uint *)(puVar29 + -0x18) = local_158;
          *(int *)(puVar29 + -0x1c) = local_15c;
          *(char **)(puVar29 + -0x20) = local_1f8;
          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;
          local_214 = (byte **)FUN_0001a5c0();
          goto LAB_00017737;
        }
        goto LAB_00016afb;
      }
      local_214 = (byte **)0x0;
      goto LAB_00016495;
    }
    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;
    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;
    *(uint *)(puVar29 + -0xc) = local_158;
    *(int *)(puVar29 + -0x10) = local_15c;
    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;
    local_214 = (byte **)FUN_0001a550();
LAB_00017737:
    piVar14 = local_1f0;
    if (local_214 == (byte **)0x0) goto LAB_00016438;
    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;
    *(byte **)(puVar29 + -0xc) = local_20c;
    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);
    *(undefined4 *)(puVar29 + -0x14) = 0x17785;
    cVar6 = FUN_00014f10();
    puVar34 = puVar29;
    if (cVar6 != '\0') goto LAB_00016570;
    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;
LAB_00016fcb:
    pcVar20 = local_230;
    if (local_230 != (char *)0x0) {
      *(char **)(puVar29 + -0xc) = local_1f8;
      *(char **)(puVar29 + -0x10) = pcVar20;
      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;
      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));
      if (iVar10 != 0) {
        *(char **)(puVar29 + -0xc) = local_1f8;
        *(undefined4 *)(puVar29 + -0x10) = 4;
        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;
        uVar11 = FUN_00020540();
        puVar31 = puVar29 + -8;
        *(undefined4 *)(puVar29 + -8) = 5;
        ppuVar28 = ppuVar28 + -0x2be3;
        goto LAB_00016222;
      }
      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
        *(char **)(puVar29 + -8) = local_1f8;
        *(undefined4 *)(puVar29 + -0xc) = 4;
        *(undefined4 *)(puVar29 + -0x10) = 1;
        *(undefined4 *)(puVar29 + -0x14) = 0x17015;
        uVar11 = FUN_000203c0();
        *(char **)(puVar29 + -8) = local_230;
        *(undefined4 *)(puVar29 + -0xc) = 4;
        *(undefined4 *)(puVar29 + -0x10) = 0;
        *(undefined4 *)(puVar29 + -0x14) = 0x17029;
        uVar12 = FUN_000203c0();
        *(undefined4 *)(puVar29 + -8) = 5;
        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;
        *(undefined4 *)(puVar29 + -0x10) = 0;
        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;
        uVar15 = dcgettext();
        *(undefined4 *)(puVar29 + -0x14) = uVar11;
        *(undefined4 *)(puVar29 + -0x18) = uVar12;
        *(undefined4 *)(puVar29 + -0x1c) = uVar15;
        *(undefined4 *)(puVar29 + -0x20) = 1;
        *(undefined4 *)(puVar29 + -0x24) = 0x17048;
        __printf_chk();
      }
    }
  }
  else {
LAB_00016277:
    if ((char)local_1f0[6] != '\0') goto LAB_00016338;
    if (*local_1f0 == 0) {
      ppbVar17 = (byte **)&local_154;
      if ((char)local_214 == '\0') {
        *(stat64 **)(puVar32 + -8) = &local_94;
        *(char **)(puVar32 + -0xc) = local_1f8;
        *(undefined4 *)(puVar32 + -0x10) = 3;
        local_214 = (byte **)&local_94;
        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;
        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),
                           *(stat64 **)(puVar32 + -8));
        ppbVar17 = local_214;
        if (iVar8 != 0) goto LAB_00016338;
      }
      piVar14 = local_1f0;
      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {
        *(byte ***)(puVar32 + -8) = ppbVar17;
        *(char **)(puVar32 + -0xc) = local_1f8;
        *(int *)(puVar32 + -0x10) = piVar14[0xf];
        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;
        cVar6 = FUN_0001d250();
        if (cVar6 != '\0') {
          *(char **)(puVar32 + -8) = local_1f8;
          *(undefined4 *)(puVar32 + -0xc) = 4;
          *(undefined4 *)(puVar32 + -0x10) = 1;
          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;
          uVar11 = FUN_000203c0();
          *(char **)(puVar32 + -8) = local_200;
          *(undefined4 *)(puVar32 + -0xc) = 4;
          *(undefined4 *)(puVar32 + -0x10) = 0;
          *(undefined4 *)(puVar32 + -0x14) = 0x16300;
          local_1f0 = (int *)FUN_000203c0();
          *(undefined4 *)(puVar32 + -8) = 5;
          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";
          *(undefined4 *)(puVar32 + -0x10) = 0;
          *(undefined4 *)(puVar32 + -0x14) = 0x16319;
          uVar12 = dcgettext();
          piVar14 = local_1f0;
          *(undefined4 *)(puVar32 + -0x10) = uVar11;
          *(int **)(puVar32 + -0x14) = piVar14;
          *(undefined4 *)(puVar32 + -0x18) = uVar12;
          *(undefined4 *)(puVar32 + -0x1c) = 0;
          *(undefined4 *)(puVar32 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;
          error();
        }
      }
      goto LAB_00016338;
    }
    puVar29 = puVar32;
    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;
    if (iVar10 != 0) goto LAB_00016356;
LAB_000165a0:
    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);
    local_214 = (byte **)0x0;
LAB_000165b7:
    uVar9 = local_204;
    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {
      uVar9 = local_1f0[4];
    }
    local_234 = (stat64 *)(uVar9 & 0xfff);
    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {
      local_238 = (stat64 *)(local_204 & 0xf000);
      if (local_238 == (stat64 *)0x4000) {
        *(int **)(puVar29 + -0x10) = local_1f0;
        *(undefined1 **)(puVar29 + -0x14) = local_208;
        *(uint *)(puVar29 + -0x18) = local_204;
        *(char **)(puVar29 + -0x1c) = local_1f8;
        *(char **)(puVar29 + -0x20) = local_200;
        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;
        cVar6 = FUN_000156e0();
        if (cVar6 != '\0') {
          local_23c = (uint)local_234 & 0x12;
          goto LAB_00016e08;
        }
      }
      else {
        *(int **)(puVar29 + -0x10) = local_1f0;
        *(undefined1 **)(puVar29 + -0x14) = local_208;
        *(uint *)(puVar29 + -0x18) = local_204;
        *(char **)(puVar29 + -0x1c) = local_1f8;
        *(char **)(puVar29 + -0x20) = local_200;
        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;
        cVar6 = FUN_000156e0();
        local_23c = 0;
        if (cVar6 != '\0') goto LAB_0001664e;
      }
    }
    else {
      *(int **)(puVar29 + -0x10) = local_1f0;
      *(undefined1 **)(puVar29 + -0x14) = local_208;
      *(uint *)(puVar29 + -0x18) = local_204;
      *(char **)(puVar29 + -0x1c) = local_1f8;
      *(char **)(puVar29 + -0x20) = local_200;
      *(undefined4 *)(puVar29 + -0x24) = 0x16618;
      cVar6 = FUN_000156e0();
      if (cVar6 != '\0') {
        local_23c = (uint)local_234 & 0x3f;
        local_238 = (stat64 *)(local_204 & 0xf000);
        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {
LAB_00016e08:
          piVar14 = local_1f0;
          if (local_228 == (int *)0x0) {
            local_20c = (byte *)local_1b4._0_4_;
            local_224 = local_1b4._4_4_;
          }
          else {
            local_20c = (byte *)local_1b4._0_4_;
            local_224 = local_1b4._4_4_;
            piVar23 = local_228;
            do {
              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&
                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {
                *(char **)(puVar29 + -0xc) = local_200;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                pcVar20 = "cannot copy cyclic symbolic link %s";
                goto LAB_00016e8b;
              }
              piVar23 = (int *)*piVar23;
            } while (piVar23 != (int *)0x0);
          }
          local_20c = (byte *)local_1b4._0_4_;
          local_224 = local_1b4._4_4_;
          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);
          local_238->__pad1 = local_158;
          local_238->__st_ino = local_1b4._0_4_;
          *(int **)&local_238->st_dev = local_228;
          *(int *)((int)&local_238->st_dev + 4) = local_15c;
          local_238->st_mode = local_1b4._4_4_;
          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {
            if (*(char *)((int)local_1f0 + 0x21) == '\0') {
              bVar25 = *(byte *)((int)local_1f0 + 0x25);
              if (bVar25 != 0) goto LAB_0001889e;
            }
            else {
              bVar25 = *(byte *)((int)local_1f0 + 0x25);
LAB_0001889e:
              *(int **)(puVar29 + -0x24) = local_1f0;
              *(undefined4 *)(puVar29 + -0x28) = 0;
              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;
              *(char **)(puVar29 + -0x30) = local_1f8;
              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;
              cVar6 = FUN_00015960();
              if ((cVar6 == '\0') &&
                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))
              goto LAB_00016fad;
            }
            local_24c = local_24c & 0xffffff00;
            local_23c = 0;
          }
          else {
            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;
            *(char **)(puVar29 + -0x30) = local_1f8;
            *(undefined4 *)(puVar29 + -0x34) = 0x17154;
            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0x2c) = local_1f8;
              *(undefined4 *)(puVar29 + -0x30) = 4;
              *(undefined4 *)(puVar29 + -0x34) = 100000;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -0x28;
              *(undefined4 *)(puVar29 + -0x28) = 5;
              pcVar20 = "cannot create directory %s";
LAB_00016f90:
              *(char **)(puVar33 + -4) = pcVar20;
              *(undefined4 *)(puVar33 + -8) = 0;
              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar33 + -0xc) = uVar11;
              *(undefined4 *)(puVar33 + -0x10) = uVar12;
              *(int *)(puVar33 + -0x14) = *piVar14;
              *(undefined4 *)(puVar33 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;
              error();
            }
            *(stat64 **)(puVar29 + -0x28) = &local_154;
            *(char **)(puVar29 + -0x2c) = local_1f8;
            *(undefined4 *)(puVar29 + -0x30) = 3;
            *(undefined4 *)(puVar29 + -0x34) = 0x17176;
            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),
                                *(stat64 **)(puVar29 + -0x28));
            _Var5 = local_154.st_mode;
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0x2c) = local_1f8;
              *(undefined4 *)(puVar29 + -0x30) = 4;
              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -0x28;
              *(undefined4 *)(puVar29 + -0x28) = 5;
              pcVar20 = "cannot stat %s";
              goto LAB_00016f90;
            }
            local_24c = local_24c & 0xffffff00;
            if ((local_154.st_mode & 0x1c0) != 0x1c0) {
              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;
              *(char **)(puVar29 + -0x30) = local_1f8;
              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;
              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));
              local_270 = _Var5;
              local_24c = CONCAT31(local_24c._1_3_,1);
              if (iVar10 != 0) {
                *(char **)(puVar29 + -0x2c) = local_1f8;
                *(undefined4 *)(puVar29 + -0x30) = 4;
                *(undefined4 *)(puVar29 + -0x34) = 0x19082;
                uVar11 = FUN_00020540();
                puVar33 = puVar29 + -0x28;
                *(undefined4 *)(puVar29 + -0x28) = 5;
                pcVar20 = "setting permissions for %s";
                goto LAB_00016f90;
              }
            }
            if (*local_21c == (code)0x0) {
              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;
              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;
              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;
              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;
              *(char **)(puVar29 + -0x40) = local_1f8;
              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;
              FUN_0001a5c0();
              *local_21c = (code)0x1;
            }
            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
              if ((char)local_1f0[6] == '\0') {
                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;
                FUN_00014d30();
              }
              else {
                *(char **)(puVar29 + -0x2c) = local_1f8;
                *(undefined4 *)(puVar29 + -0x30) = 4;
                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -0x28) = 5;
                *(char **)(puVar29 + -0x2c) = "created directory %s\n";
                *(undefined4 *)(puVar29 + -0x30) = 0;
                *(undefined4 *)(puVar29 + -0x34) = 0x17214;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x28) = uVar11;
                *(undefined4 *)(puVar29 + -0x2c) = uVar12;
                *(undefined4 *)(puVar29 + -0x30) = 1;
                *(undefined4 *)(puVar29 + -0x34) = 0x17220;
                __printf_chk();
              }
            }
          }
          puVar34 = puVar29 + -0x20;
          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);
          uVar9 = (uint)bVar25;
          if ((bVar25 == 0) ||
             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {
            local_240 = &local_94;
            piVar14 = local_1f0;
            psVar26 = local_240;
            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {
              *(int *)&psVar26->st_dev = *piVar14;
              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;
              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);
            }
            *(undefined4 *)(puVar29 + -0x2c) = 2;
            *(char **)(puVar29 + -0x30) = local_200;
            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;
            pcVar20 = (char *)FUN_000212f0();
            local_230 = pcVar20;
            if (pcVar20 == (char *)0x0) {
              *(char **)(puVar29 + -0x2c) = local_200;
              *(undefined4 *)(puVar29 + -0x30) = 4;
              *(undefined4 *)(puVar29 + -0x34) = 0x19153;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -0x28) = 5;
              *(char **)(puVar29 + -0x2c) = "cannot access %s";
              *(undefined4 *)(puVar29 + -0x30) = 0;
              *(undefined4 *)(puVar29 + -0x34) = 0x19168;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar29 + -0x34) = uVar11;
              *(undefined4 *)(puVar29 + -0x38) = uVar12;
              *(int *)(puVar29 + -0x3c) = *piVar14;
              *(undefined4 *)(puVar29 + -0x40) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;
              error();
            }
            if (local_1f0[1] == 3) {
              local_94.st_dev._4_4_ = 2;
            }
            if (*pcVar20 == '\0') {
              local_228 = (int *)((uint)local_228._1_3_ << 8);
              uVar9 = 1;
            }
            else {
              local_20c = local_1b4;
              local_228 = (int *)((uint)local_228._1_3_ << 8);
              local_234 = (stat64 *)local_f4;
              local_22c = &local_1d4;
              local_224 = CONCAT31(local_224._1_3_,1);
              do {
                *(undefined4 *)(puVar29 + -0x28) = 0;
                *(char **)(puVar29 + -0x2c) = pcVar20;
                *(char **)(puVar29 + -0x30) = local_200;
                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;
                ppbVar17 = (byte **)FUN_0001d480();
                *(undefined4 *)(puVar29 + -0x28) = 0;
                *(char **)(puVar29 + -0x2c) = pcVar20;
                *(char **)(puVar29 + -0x30) = local_1f8;
                local_214 = ppbVar17;
                *(undefined4 *)(puVar29 + -0x34) = 0x17336;
                uVar11 = FUN_0001d480();
                cVar1 = *local_21c;
                *(undefined4 *)(puVar29 + -0x28) = 0;
                *(__ino_t **)(puVar29 + -0x2c) = local_22c;
                *(stat64 **)(puVar29 + -0x30) = local_234;
                *(undefined4 *)(puVar29 + -0x34) = 0;
                *(stat64 **)(puVar29 + -0x38) = local_240;
                *(stat64 **)(puVar29 + -0x3c) = local_238;
                *(byte **)(puVar29 + -0x40) = local_20c;
                local_f4[0] = (byte)cVar1;
                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;
                bVar40 = FUN_00015de0();
                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);
                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);
                *(undefined4 *)(puVar29 + -0x30) = uVar11;
                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;
                free(*(void **)(puVar29 + -0x30));
                *(byte ***)(puVar29 + -0x30) = local_214;
                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;
                free(*(void **)(puVar29 + -0x30));
                if ((byte)local_1d4 != '\0') break;
                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);
                *(char **)(puVar29 + -0x30) = pcVar20;
                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;
                sVar16 = strlen(*(char **)(puVar29 + -0x30));
                pcVar20 = pcVar20 + sVar16 + 1;
              } while (*pcVar20 != '\0');
              uVar9 = local_224 & 0xff;
            }
            *(char **)(puVar29 + -0x30) = local_230;
            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;
            free(*(void **)(puVar29 + -0x30));
            *local_21c = local_228._0_1_;
          }
          if ((byte)local_1fc != '\0') {
            bVar25 = 0;
            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);
            bVar40 = 0;
            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);
LAB_00016722:
            if (local_1f0[0xf] != 0) {
              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);
              *(stat64 **)(puVar34 + -8) = &local_94;
              *(char **)(puVar34 + -0xc) = local_1f8;
              *(undefined4 *)(puVar34 + -0x10) = 3;
              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;
              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),
                                  *(stat64 **)(puVar34 + -8));
              piVar14 = local_1f0;
              bVar40 = (byte)local_1fc;
              if (iVar10 == 0) {
                *(stat64 **)(puVar34 + -8) = &local_94;
                *(char **)(puVar34 + -0xc) = local_1f8;
                *(int *)(puVar34 + -0x10) = piVar14[0xf];
                *(undefined4 *)(puVar34 + -0x14) = 0x16772;
                FUN_0001d1d0();
                bVar40 = (byte)local_1fc;
              }
            }
            uVar9 = local_224 & 0xff;
            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);
            puVar29 = puVar34;
            goto LAB_00016794;
          }
          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);
          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);
          puVar29 = puVar29 + -0x20;
        }
        else {
LAB_0001664e:
          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);
          puVar34 = puVar29;
          if ((char)local_1f0[0xb] != '\0') {
            if (*local_200 != '/') {
              uVar38 = puVar29 < (undefined1 *)0xc;
              uVar39 = puVar29 == (undefined1 *)0xc;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;
              pbVar13 = (byte *)FUN_0001cf20();
              iVar10 = 2;
              pbVar35 = &DAT_0002c142;
              pbVar36 = pbVar13;
              do {
                if (iVar10 == 0) break;
                iVar10 = iVar10 + -1;
                uVar38 = *pbVar35 < *pbVar36;
                uVar39 = *pbVar35 == *pbVar36;
                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;
                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;
              } while ((bool)uVar39);
              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {
                local_20c = pbVar13;
                *(undefined1 **)(puVar29 + -8) = local_f4;
                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;
                *(undefined4 *)(puVar29 + -0x10) = 3;
                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;
                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                   *(stat64 **)(puVar29 + -8));
                pbVar13 = local_20c;
                if (iVar10 == 0) {
                  *(stat64 **)(puVar29 + -8) = &local_94;
                  *(byte **)(puVar29 + -0xc) = pbVar13;
                  *(undefined4 *)(puVar29 + -0x10) = 3;
                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;
                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                     *(stat64 **)(puVar29 + -8));
                  pbVar13 = local_20c;
                  if ((iVar10 == 0) &&
                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||
                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||
                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {
                    *(byte **)(puVar29 + -0x10) = local_20c;
                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;
                    free(*(void **)(puVar29 + -0x10));
                    *(char **)(puVar29 + -8) = local_1f8;
                    *(undefined4 *)(puVar29 + -0xc) = 3;
                    *(undefined4 *)(puVar29 + -0x10) = 0;
                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;
                    uVar11 = FUN_00020700();
                    *(undefined4 *)(puVar29 + -8) = 5;
                    pcVar20 = "%s: can make relative symbolic links only in current directory";
LAB_00016e8b:
                    *(char **)(puVar29 + -0xc) = pcVar20;
                    *(undefined4 *)(puVar29 + -0x10) = 0;
                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;
                    uVar12 = dcgettext();
                    *(undefined4 *)(puVar29 + -0x14) = uVar11;
                    *(undefined4 *)(puVar29 + -0x18) = uVar12;
                    *(undefined4 *)(puVar29 + -0x1c) = 0;
                    *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;
                    error();
                  }
                }
              }
              *(byte **)(puVar29 + -0x10) = pbVar13;
              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;
              free(*(void **)(puVar29 + -0x10));
            }
            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);
            *(char **)(puVar29 + -8) = local_1f8;
            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;
            *(char **)(puVar29 + -0x10) = local_200;
            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;
            iVar10 = FUN_0001ade0();
            bVar25 = 0;
            if (iVar10 < 0) {
              *(char **)(puVar29 + -8) = local_200;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 1;
              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;
              uVar11 = FUN_000203c0();
              *(char **)(puVar29 + -8) = local_1f8;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              local_1f4 = (char *)uVar11;
              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;
              uVar11 = FUN_000203c0();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;
              piVar14 = __errno_location();
              *(char **)(puVar29 + -0x10) = local_1f4;
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;
              error();
            }
            goto LAB_000166da;
          }
          if (*(char *)((int)local_1f0 + 0x17) != '\0') {
            *(byte **)(puVar29 + -0xc) = local_20c;
            bVar25 = 0;
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x18382;
            bVar40 = FUN_00014f10();
joined_r0x00018387:
            if (bVar40 != 0) goto LAB_000166da;
LAB_00016fad:
            puVar29 = puVar34;
            if (*(char *)((int)local_1f0 + 0x25) != '\0') {
LAB_000177a0:
              *(undefined4 *)(puVar29 + -4) = 0x177a5;
              FUN_00015060();
            }
            if (local_214 == (byte **)0x0) {
              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;
              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;
              *(uint *)(puVar29 + -0xc) = local_158;
              *(int *)(puVar29 + -0x10) = local_15c;
              *(undefined4 *)(puVar29 + -0x14) = 0x18325;
              FUN_0001a4c0();
            }
            goto LAB_00016fcb;
          }
          if ((local_238 == (stat64 *)0x8000) ||
             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {
            local_244 = local_1b4._16_4_;
            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));
            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;
            *(char **)(puVar29 + -0x10) = local_200;
            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;
            local_208 = (undefined1 *)FUN_0001d190();
            if ((int)local_208 < 0) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -8;
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "cannot open %s for reading";
              goto LAB_00016f90;
            }
            *(undefined1 **)(puVar29 + -8) = local_f4;
            *(undefined1 **)(puVar29 + -0xc) = local_208;
            *(undefined4 *)(puVar29 + -0x10) = 3;
            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;
            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),
                                *(stat64 **)(puVar29 + -8));
            piVar14 = local_1f0;
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "cannot fstat %s";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
              goto LAB_00018b73;
            }
            if ((local_158 != local_98 || local_15c != local_9c) ||
               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"
              ;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(undefined4 *)(puVar29 + -0x1c) = 0;
              goto LAB_00018b73;
            }
            local_284 = (uint)local_234 & 0x1ff;
            if ((byte)local_1f4 != '\0') {
LAB_00019094:
              local_278 = local_23c;
LAB_000190a0:
              pcVar19 = (code *)(~local_278 & local_284);
              *(code **)(puVar29 + -8) = pcVar19;
              *(undefined4 *)(puVar29 + -0xc) = 0xc1;
              *(char **)(puVar29 + -0x10) = local_1f8;
              local_21c = pcVar19;
              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;
              piVar14 = (int *)FUN_0001d190();
              local_228 = piVar14;
              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;
              local_220 = (code *)__errno_location();
              iVar10 = *(int *)local_220;
              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);
              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);
              if (bVar25 == 0) {
LAB_00019445:
                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);
                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);
                if (bVar25 == 0) {
                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
                  if (-1 < (int)local_228) {
LAB_00017c81:
                    *(stat64 **)(puVar29 + -8) = &local_94;
                    *(int **)(puVar29 + -0xc) = local_228;
                    *(undefined4 *)(puVar29 + -0x10) = 3;
                    local_240 = &local_94;
                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;
                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),
                                        *(stat64 **)(puVar29 + -8));
                    if (iVar10 != 0) {
                      *(int *)(puVar29 + -4) = iVar10;
                      *(int *)(puVar29 + -8) = iVar10;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(undefined4 *)(puVar29 + -0x10) = 4;
                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;
                      uVar11 = FUN_00020540();
                      *(undefined4 *)(puVar29 + -8) = 5;
                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";
                      *(undefined4 *)(puVar29 + -0x10) = 0;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;
                      uVar12 = dcgettext();
                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;
                      piVar14 = __errno_location();
                      *(undefined4 *)(puVar29 + -0x14) = uVar11;
                      *(undefined4 *)(puVar29 + -0x18) = uVar12;
                      *(int *)(puVar29 + -0x1c) = *piVar14;
                      *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;
                      error();
                    }
                    uVar11 = extraout_ECX;
                    if ((byte)local_20c != '\0') {
                      if (local_1f0[0xe] != 0) {
                        *(int **)(puVar29 + -4) = local_1f0;
                        *(undefined1 **)(puVar29 + -8) = local_208;
                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;
                        *(int **)(puVar29 + -0x10) = local_228;
                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;
                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));
                        uVar11 = extraout_ECX_11;
                        if (iVar10 == 0) goto LAB_000194e2;
                        if (local_1f0[0xe] == 2) {
                          *(int **)(puVar29 + -4) = local_1f0;
                          *(char **)(puVar29 + -8) = local_200;
                          *(undefined4 *)(puVar29 + -0xc) = 4;
                          *(undefined4 *)(puVar29 + -0x10) = 1;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;
                          uVar11 = FUN_000203c0();
                          *(char **)(puVar29 + -8) = local_1f8;
                          *(undefined4 *)(puVar29 + -0xc) = 4;
                          *(undefined4 *)(puVar29 + -0x10) = 0;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;
                          local_20c = (byte *)FUN_000203c0();
                          *(undefined4 *)(puVar29 + -8) = 5;
                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";
                          *(undefined4 *)(puVar29 + -0x10) = 0;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;
                          uVar12 = dcgettext();
                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;
                          piVar14 = __errno_location();
                          pbVar13 = local_20c;
                          *(undefined4 *)(puVar29 + -0x10) = uVar11;
                          *(byte **)(puVar29 + -0x14) = pbVar13;
                          *(undefined4 *)(puVar29 + -0x18) = uVar12;
                          *(int *)(puVar29 + -0x1c) = *piVar14;
                          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;
                          error();
                        }
                      }
                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;
                      uVar9 = getpagesize();
                      local_25c = (code *)local_94.st_blksize;
                      local_258 = (code *)local_94.st_blksize;
                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);
                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {
                        local_258 = FUN_00020000;
                        local_25c = (code *)0x200;
                        pcVar19 = local_25c;
                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {
                          pcVar19 = (code *)local_94.st_blksize;
                          local_25c = (code *)local_94.st_blksize;
                        }
                      }
                      *(code **)(puVar29 + -4) = pcVar19;
                      *(code **)(puVar29 + -8) = pcVar19;
                      *(undefined4 *)(puVar29 + -0xc) = 2;
                      *(undefined4 *)(puVar29 + -0x10) = 0;
                      *(undefined4 *)(puVar29 + -0x14) = 0;
                      *(undefined4 *)(puVar29 + -0x18) = 0;
                      *(undefined4 *)(puVar29 + -0x1c) = 0;
                      *(undefined1 **)(puVar29 + -0x20) = local_208;
                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;
                      FUN_0001d110();
                      local_21c = (code *)(local_f4._16_4_ & 0xf000);
                      bVar3 = false;
                      if (local_21c == (code *)0x8000) {
                        uVar22 = local_c4 >> 0x1f & 0x1ff;
                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);
                        iVar8 = iVar10 >> 9;
                        uVar22 = (uint)(local_bc <
                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));
                        iVar10 = local_b8 - iVar8;
                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=
                                (int)(iVar10 - uVar22) < 0;
                      }
                      local_220 = (code *)(uVar9 - 1);
                      if ((local_94.st_mode & 0xf000) == 0x8000) {
                        if (local_1f0[3] != 3) {
                          if ((local_1f0[3] == 2) && (bVar3)) {
                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;
                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;
                            local_220 = (code *)FUN_00022ed0();
                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -
                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;
                            goto LAB_000199fc;
                          }
                          goto LAB_00017d9d;
                        }
                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;
                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;
                        local_220 = (code *)FUN_00022ed0();
                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -
                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;
                        if (bVar3) {
LAB_000199fc:
                          local_274 = local_1f0[3];
                          local_285 = (byte)local_20c;
                          goto LAB_00019a18;
                        }
                        local_22c = &local_1d4;
                        uVar9 = (uint)(local_1f0[3] == 3);
                      }
                      else {
LAB_00017d9d:
                        iVar10 = local_c0;
                        if (0x1ffe0000 < local_c0 - 0x20000U) {
                          iVar10 = 0x20000;
                        }
                        local_220 = (code *)(0x7fffffff - uVar9);
                        *(undefined4 *)(puVar29 + -4) = 0x20000;
                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);
                        *(code **)(puVar29 + -0xc) = local_258;
                        *(int *)(puVar29 + -0x10) = iVar10;
                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;
                        pcVar19 = (code *)FUN_0001c430();
                        if ((local_21c == (code *)0x8000) &&
                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {
                          local_258 = (code *)(local_f4._44_4_ + 1);
                        }
                        local_21c = pcVar19 + -1 + (int)local_258;
                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);
                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {
                          local_258 = pcVar19;
                        }
                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;
                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;
                        local_220 = (code *)FUN_00022ed0();
                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -
                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;
                        if (bVar3) {
                          local_285 = '\0';
                          local_274 = 1;
LAB_00019a18:
                          pcVar19 = (code *)0x0;
                          iVar10 = 0;
                          local_21c = (code *)local_f4._44_4_;
                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;
                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;
                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;
                          *(undefined1 **)(puVar29 + -0x10) = local_208;
                          local_218 = local_c4;
                          local_22c = &local_1d4;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;
                          FUN_0001a6d0();
                          local_254 = (code *)0x0;
                          local_250 = 0;
                          local_24c = 0;
                          local_248 = 0;
                          local_280 = ppuVar28;
                          do {
                            *(__ino_t **)(puVar29 + -0x10) = local_22c;
                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;
                            uVar12 = FUN_0001a710();
                            ppuVar28 = local_280;
                            if ((char)uVar12 == '\0') {
                              uVar11 = extraout_ECX_10;
                              if (local_1bf == '\0') {
                                if (local_1c0 == '\0') {
                                  *(undefined4 *)(puVar29 + -4) = uVar12;
                                  *(char **)(puVar29 + -8) = local_200;
                                  *(undefined4 *)(puVar29 + -0xc) = 3;
                                  *(undefined4 *)(puVar29 + -0x10) = 0;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;
                                  uVar11 = FUN_00020700();
                                  *(undefined4 *)(puVar29 + -8) = 5;
                                  ppuVar28 = ppuVar28 + -0x2aaf;
                                  goto LAB_00019fe6;
                                }
                                pcVar19 = (code *)0x0;
                                if (local_285 != '\0') {
                                  pcVar19 = local_25c;
                                }
                                uVar9 = (uint)(local_1f0[3] == 3);
                                local_25c = pcVar19;
                                goto LAB_00017e78;
                              }
                              break;
                            }
                            if (local_1c4 != (stat64 *)0x0) {
                              local_234 = (stat64 *)0x0;
                              local_26c = pcVar19;
                              local_264 = local_24c;
                              local_260 = local_248;
                              local_268 = iVar10;
                              do {
                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);
                                pcVar19 = (code *)*puVar37;
                                iVar10 = puVar37[1];
                                local_24c = puVar37[2];
                                local_248 = puVar37[3];
                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)
                                ;
                                iVar8 = local_218 - iVar27;
                                if ((SBORROW4(local_218,iVar27) !=
                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=
                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {
                                  if ((SBORROW4(local_218,iVar10) !=
                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=
                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)
                                  {
                                    pcVar19 = local_21c;
                                    iVar10 = local_218;
                                  }
                                  local_24c = (int)local_21c - (int)pcVar19;
                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);
                                }
                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);
                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -
                                            local_260) -
                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264
                                                  );
                                local_20c = (byte *)((uint)local_20c & 0xffffff00);
                                if (local_250 != 0 || local_254 != (code *)0x0) {
                                  *(undefined4 *)(puVar29 + -4) = 0;
                                  *(int *)(puVar29 + -8) = iVar10;
                                  *(code **)(puVar29 + -0xc) = pcVar19;
                                  *(undefined1 **)(puVar29 + -0x10) = local_208;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;
                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),
                                                   *(__off64_t *)(puVar29 + -0xc),
                                                   *(int *)(puVar29 + -4));
                                  if (_Var41 < 0) {
                                    *(int *)(puVar29 + -4) = iVar10;
                                    ppuVar28 = local_280;
                                    *(int *)(puVar29 + -8) = iVar10;
                                    *(char **)(puVar29 + -0xc) = local_200;
                                    *(undefined4 *)(puVar29 + -0x10) = 4;
                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;
                                    uVar11 = FUN_00020540();
                                    *(undefined4 *)(puVar29 + -8) = 5;
                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);
LAB_00019f2f:
                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;
                                    *(undefined4 *)(puVar29 + -0x10) = 0;
                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;
                                    uVar12 = dcgettext();
                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;
                                    piVar14 = __errno_location();
                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;
                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;
                                    *(int *)(puVar29 + -0x1c) = *piVar14;
                                    *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;
                                    error();
                                  }
                                  if (local_274 == 1) {
                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;
                                    cVar6 = FUN_000149e0();
                                    if (cVar6 == '\0') {
                                      *(code **)(puVar29 + -4) = pcVar19;
                                      ppuVar28 = local_280;
                                      *(char **)(puVar29 + -8) = local_1f8;
                                      *(undefined4 *)(puVar29 + -0xc) = 3;
                                      *(undefined4 *)(puVar29 + -0x10) = 0;
                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;
                                      uVar11 = FUN_00020700();
                                      *(undefined4 *)(puVar29 + -8) = 5;
                                      ppuVar28 = ppuVar28 + -0x2c19;
                                      goto LAB_00019f2f;
                                    }
                                    pcVar24 = (code *)0x0;
                                    goto LAB_00019af3;
                                  }
                                  *(int *)(puVar29 + -0xc) = local_250;
                                  *(code **)(puVar29 + -0x10) = local_254;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;
                                  cVar6 = FUN_000150b0();
                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);
                                  if (cVar6 != '\0') goto LAB_00019ae0;
LAB_00019cf7:
                                  ppuVar28 = local_280;
                                  *(int *)(puVar29 + -0x10) = local_1bc;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;
                                  free(*(void **)(puVar29 + -0x10));
                                  bVar25 = 0;
                                  goto LAB_00018028;
                                }
LAB_00019ae0:
                                pcVar24 = (code *)0x0;
                                if (local_274 == 3) {
                                  pcVar24 = local_25c;
                                }
LAB_00019af3:
                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;
                                *(uint **)(puVar29 + -0x14) = &local_1dc;
                                *(int *)(puVar29 + -0x18) = local_248;
                                *(uint *)(puVar29 + -0x1c) = local_24c;
                                *(char **)(puVar29 + -0x20) = local_1f8;
                                *(char **)(puVar29 + -0x24) = local_200;
                                *(undefined4 *)(puVar29 + -0x28) = 1;
                                *(code **)(puVar29 + -0x2c) = pcVar24;
                                *(code **)(puVar29 + -0x30) = local_258;
                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;
                                cVar6 = FUN_000151c0();
                                if (cVar6 == '\0') goto LAB_00019cf7;
                                local_250 = iVar10 + local_1d8 +
                                            (uint)CARRY4((uint)pcVar19,local_1dc);
                                local_254 = pcVar19 + local_1dc;
                                uVar38 = (byte)local_20c;
                                if (local_1d8 != 0 || local_1dc != 0) {
                                  uVar38 = local_1dd;
                                }
                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);
                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {
                                  local_1bf = '\x01';
                                  break;
                                }
                                local_26c = pcVar19;
                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);
                                local_268 = iVar10;
                                local_264 = local_24c;
                                local_260 = local_248;
                              } while (local_234 < local_1c4);
                            }
                            *(int *)(puVar29 + -0x10) = local_1bc;
                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;
                            free(*(void **)(puVar29 + -0x10));
                            local_1bc = 0;
                            local_1c4 = (stat64 *)0x0;
                            uVar11 = extraout_ECX_05;
                          } while (local_1bf == '\0');
                          ppuVar28 = local_280;
                          bVar3 = true;
                          if ((SBORROW4(local_250,local_218) !=
                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==
                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {
                            bVar3 = false;
                            if ((byte)local_20c == '\0') goto LAB_00017ed4;
                          }
                          if (local_274 == 1) {
                            *(undefined4 *)(puVar29 + -4) = 0x1a279;
                            iVar10 = FUN_000149e0();
                            uVar11 = extraout_ECX_14;
                            if ((char)iVar10 == '\0') goto LAB_00019fca;
                          }
                          else {
                            *(undefined4 *)(puVar29 + -4) = uVar11;
                            *(int *)(puVar29 + -8) = local_218;
                            *(code **)(puVar29 + -0xc) = local_21c;
                            *(int **)(puVar29 + -0x10) = local_228;
                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;
                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),
                                                 *(__off64_t *)(puVar29 + -0xc));
                            pcVar24 = local_21c;
                            pcVar19 = local_254;
                            if (iVar10 != 0) goto LAB_00019fca;
                            uVar11 = extraout_ECX_06;
                            if ((local_274 == 3) && (bVar3)) {
                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;
                              iVar10 = local_250;
                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;
                              *(uint *)(puVar29 + -0xc) =
                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);
                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;
                              *(int *)(puVar29 + -0x14) = iVar10;
                              *(code **)(puVar29 + -0x18) = pcVar19;
                              *(undefined4 *)(puVar29 + -0x1c) = 3;
                              *(int **)(puVar29 + -0x20) = local_228;
                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;
                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),
                                                  *(int *)(puVar29 + -0x1c),
                                                  *(__off64_t *)(puVar29 + -0x18),
                                                  *(__off64_t *)(puVar29 + -0x10));
                              uVar11 = extraout_ECX_07;
                              if (iVar8 < 0) {
                                *(undefined4 *)(puVar29 + -4) = 0x1977c;
                                piVar14 = __errno_location();
                                uVar11 = extraout_ECX_08;
                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {
                                  *(int *)(puVar29 + -4) = iVar10;
                                  *(int *)(puVar29 + -8) = iVar10;
                                  *(char **)(puVar29 + -0xc) = local_1f8;
                                  *(undefined4 *)(puVar29 + -0x10) = 4;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;
                                  uVar11 = FUN_00020540();
                                  *(undefined4 *)(puVar29 + -8) = 5;
                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;
                                  *(undefined4 *)(puVar29 + -0x10) = 0;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;
                                  uVar12 = dcgettext();
                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;
                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;
                                  *(int *)(puVar29 + -0x1c) = *piVar14;
                                  *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;
                                  error();
                                }
                              }
                            }
                          }
                          goto LAB_00017ed4;
                        }
                        local_22c = &local_1d4;
                        local_25c = (code *)0x0;
                        uVar9 = (uint)(local_1f0[3] == 3);
                      }
LAB_00017e78:
                      *(uint **)(puVar29 + -0x10) = &local_1dc;
                      *(__ino_t **)(puVar29 + -0x14) = local_22c;
                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;
                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;
                      *(char **)(puVar29 + -0x20) = local_1f8;
                      *(char **)(puVar29 + -0x24) = local_200;
                      *(uint *)(puVar29 + -0x28) = uVar9;
                      *(code **)(puVar29 + -0x2c) = local_25c;
                      *(code **)(puVar29 + -0x30) = local_258;
                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;
                      uVar12 = FUN_000151c0();
                      if ((char)uVar12 != '\0') {
                        uVar11 = extraout_ECX_00;
                        if ((char)local_1dc != '\0') {
                          *(undefined4 *)(puVar29 + -4) = uVar12;
                          *(undefined4 *)(puVar29 + -8) = local_1d0;
                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;
                          *(int **)(puVar29 + -0x10) = local_228;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;
                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),
                                               *(__off64_t *)(puVar29 + -0xc));
                          uVar11 = extraout_ECX_13;
                          if (iVar10 < 0) {
LAB_00019fca:
                            *(int *)(puVar29 + -4) = iVar10;
                            *(int *)(puVar29 + -8) = iVar10;
                            *(char **)(puVar29 + -0xc) = local_1f8;
                            *(undefined4 *)(puVar29 + -0x10) = 4;
                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;
                            uVar11 = FUN_00020540();
                            *(undefined4 *)(puVar29 + -8) = 5;
                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);
LAB_00019fe6:
                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;
                            *(undefined4 *)(puVar29 + -0x10) = 0;
                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;
                            uVar12 = dcgettext();
                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;
                            piVar14 = __errno_location();
                            *(undefined4 *)(puVar29 + -0x14) = uVar11;
                            *(undefined4 *)(puVar29 + -0x18) = uVar12;
                            *(int *)(puVar29 + -0x1c) = *piVar14;
                            *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;
                            error();
                          }
                        }
                        goto LAB_00017ed4;
                      }
LAB_000197c4:
                      bVar25 = 0;
                      goto LAB_00018028;
                    }
LAB_000194e2:
                    local_220 = (code *)0x0;
LAB_00017ed4:
                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {
                      local_30 = local_174;
                      local_2c = local_170;
                      local_28 = local_16c;
                      local_24 = local_168;
                      *(long *)(puVar29 + -4) = local_168;
                      *(__time_t **)(puVar29 + -8) = &local_30;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(int **)(puVar29 + -0x10) = local_228;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;
                      iVar10 = FUN_000220c0();
                      uVar11 = extraout_ECX_09;
                      if (iVar10 != 0) {
                        *(int *)(puVar29 + -4) = iVar10;
                        *(int *)(puVar29 + -8) = iVar10;
                        *(char **)(puVar29 + -0xc) = local_1f8;
                        *(undefined4 *)(puVar29 + -0x10) = 4;
                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;
                        uVar11 = FUN_00020540();
                        *(undefined4 *)(puVar29 + -8) = 5;
                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;
                        *(undefined4 *)(puVar29 + -0x10) = 0;
                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;
                        uVar12 = dcgettext();
                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;
                        piVar14 = __errno_location();
                        *(undefined4 *)(puVar29 + -0x14) = uVar11;
                        *(undefined4 *)(puVar29 + -0x18) = uVar12;
                        *(int *)(puVar29 + -0x1c) = *piVar14;
                        *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;
                        error();
                      }
                    }
                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&
                       ((local_1b4._24_4_ != local_94.st_uid ||
                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))
                    {
                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;
                      uVar9 = (uint)local_1f4 & 0xff;
                      *(stat64 **)(puVar29 + -8) = local_240;
                      *(uint *)(puVar29 + -0xc) = uVar9;
                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;
                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;
                      iVar10 = FUN_00015b60();
                      if (iVar10 == -1) goto LAB_000197c4;
                      uVar11 = extraout_ECX_01;
                      if (iVar10 == 0) {
                        local_244 = local_244 & 0xfffff1ff;
                      }
                    }
                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {
LAB_0001950b:
                      bVar25 = 1;
                    }
                    else {
                      piVar14 = local_1f0;
                      if ((local_94.st_mode & 0x80) == 0) {
                        *(undefined4 *)(puVar29 + -4) = 0x19e80;
                        piVar14 = (int *)geteuid();
                        piVar23 = local_228;
                        if (piVar14 == (int *)0x0) goto LAB_00017f67;
                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;
                        iVar10 = FUN_00014ac0();
                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);
                        *(undefined4 *)(puVar29 + -4) = uVar12;
                        *(undefined4 *)(puVar29 + -8) = uVar12;
                        *(int **)(puVar29 + -0xc) = local_1f0;
                        *(int **)(puVar29 + -0x10) = piVar23;
                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;
                        bVar25 = FUN_00014b00();
                        uVar11 = extraout_ECX_12;
                        if (bVar25 == 0) goto LAB_00017f99;
                      }
                      else {
LAB_00017f67:
                        *(int **)(puVar29 + -4) = piVar14;
                        *(int **)(puVar29 + -8) = piVar14;
                        *(int **)(puVar29 + -0xc) = local_1f0;
                        *(int **)(puVar29 + -0x10) = local_228;
                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;
                        uVar12 = FUN_00014b00();
                        uVar11 = extraout_ECX_02;
                        if ((char)uVar12 != '\0') goto LAB_0001950b;
LAB_00017f99:
                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));
                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;
                      }
                      if ((char)uVar12 != '\0') {
                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;
                        FUN_00014ac0();
                        uVar11 = extraout_ECX_03;
                      }
                    }
                    piVar14 = local_1f0;
                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))
                    {
                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {
                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);
                        if (bVar40 == 0) {
                          if (local_278 != 0) {
                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;
                            uVar9 = FUN_00015d90();
                            if ((local_278 & ~uVar9) != 0) {
                              *(undefined4 *)(puVar29 + -4) = 0x1a034;
                              iVar10 = FUN_00014ac0();
                              if (iVar10 != 0) {
                                *(int *)(puVar29 + -4) = iVar10;
                                *(int *)(puVar29 + -8) = iVar10;
                                *(char **)(puVar29 + -0xc) = local_1f8;
                                *(undefined4 *)(puVar29 + -0x10) = 4;
                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;
                                local_21c = (code *)FUN_00020540();
                                *(undefined4 *)(puVar29 + -8) = 5;
                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;
                                *(undefined4 *)(puVar29 + -0x10) = 0;
                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;
                                local_20c = (byte *)dcgettext();
                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;
                                piVar14 = __errno_location();
                                pbVar13 = local_20c;
                                *(code **)(puVar29 + -0x14) = local_21c;
                                *(byte **)(puVar29 + -0x18) = pbVar13;
                                *(int *)(puVar29 + -0x1c) = *piVar14;
                                *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;
                                error();
                              }
                            }
                          }
                        }
                        else {
                          local_20c = (byte *)((uint)local_20c & 0xffffff00);
                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;
                          uVar42 = FUN_00015d90();
                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);
                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;
                          *(int **)(puVar29 + -0xc) = local_228;
                          *(char **)(puVar29 + -0x10) = local_1f8;
                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;
                          iVar10 = FUN_0001b7d0();
                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);
                          if (iVar10 != 0) {
                            bVar25 = (byte)local_20c;
                          }
                        }
                      }
                      else {
                        *(undefined4 *)(puVar29 + -4) = uVar11;
                        *(int *)(puVar29 + -8) = piVar14[4];
                        *(int **)(puVar29 + -0xc) = local_228;
                        *(char **)(puVar29 + -0x10) = local_1f8;
                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;
                        iVar10 = FUN_0001b7d0();
                        if (iVar10 != 0) {
                          bVar25 = 0;
                        }
                      }
                    }
                    else {
                      *(uint *)(puVar29 + -0x10) = local_244;
                      *(int **)(puVar29 + -0x14) = local_228;
                      *(char **)(puVar29 + -0x18) = local_1f8;
                      *(undefined1 **)(puVar29 + -0x1c) = local_208;
                      *(char **)(puVar29 + -0x20) = local_200;
                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;
                      iVar10 = FUN_0001b720();
                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {
                        bVar25 = 0;
                      }
                    }
                    goto LAB_00018028;
                  }
                }
                else {
                  iVar10 = 0x15;
                  if (*local_1f8 != '\0') {
                    uVar9 = 0xffffffff;
                    pcVar20 = local_1f8;
                    do {
                      if (uVar9 == 0) break;
                      uVar9 = uVar9 - 1;
                      cVar6 = *pcVar20;
                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;
                    } while (cVar6 != '\0');
                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;
                  }
                }
              }
              else {
                iVar10 = 0x11;
                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);
                if ((char)local_1f0[6] == '\0') {
                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);
                  *(stat64 **)(puVar29 + -8) = &local_94;
                  *(char **)(puVar29 + -0xc) = local_1f8;
                  *(undefined4 *)(puVar29 + -0x10) = 3;
                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;
                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                     *(stat64 **)(puVar29 + -8));
                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {
                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);
                    if (*(byte *)(local_1f0 + 0xc) == 0) {
                      *(uint *)(puVar29 + -4) = uVar9;
                      *(uint *)(puVar29 + -8) = uVar9;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(undefined4 *)(puVar29 + -0x10) = 4;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;
                      uVar11 = FUN_00020540();
                      *(undefined4 *)(puVar29 + -8) = 5;
                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";
                      *(undefined4 *)(puVar29 + -0x10) = 0;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;
                      uVar12 = dcgettext();
                      *(undefined4 *)(puVar29 + -0x14) = uVar11;
                      *(undefined4 *)(puVar29 + -0x18) = uVar12;
                      *(undefined4 *)(puVar29 + -0x1c) = 0;
                      *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;
                      error();
                    }
                    *(uint *)(puVar29 + -4) = uVar9;
                    *(code **)(puVar29 + -8) = local_21c;
                    *(undefined4 *)(puVar29 + -0xc) = 0x41;
                    *(char **)(puVar29 + -0x10) = local_1f8;
                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;
                    local_228 = (int *)FUN_0001d190();
                    iVar10 = *(int *)local_220;
                  }
                  goto LAB_00019445;
                }
              }
LAB_00019116:
              *(char **)(puVar29 + -0xc) = local_1f8;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x19126;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = iVar10;
LAB_00018b73:
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;
              error();
            }
            *(uint *)(puVar29 + -0xc) =
                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;
            local_228 = (int *)FUN_0001d190();
            piVar23 = local_1f0;
            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')
               ) {
              if (-1 < (int)local_228) goto LAB_00017c77;
LAB_0001926b:
              *(undefined4 *)(puVar29 + -4) = 0x19270;
              piVar23 = __errno_location();
              if (*(char *)((int)local_1f0 + 0x16) == '\0') {
                iVar10 = *piVar23;
                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {
                  local_278 = 0;
                  goto LAB_000190a0;
                }
                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);
                goto LAB_00019116;
              }
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x19290;
              iVar10 = unlink(*(char **)(puVar29 + -0x10));
              if (iVar10 != 0) {
                *(int **)(puVar29 + -4) = piVar14;
                *(int **)(puVar29 + -8) = piVar14;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(char **)(puVar29 + -0xc) = "cannot remove %s";
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x14) = uVar11;
                *(undefined4 *)(puVar29 + -0x18) = uVar12;
                *(int *)(puVar29 + -0x1c) = *piVar23;
                goto LAB_00018b73;
              }
              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;
                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(char **)(puVar29 + -0xc) = "removed %s\n";
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -8) = uVar11;
                *(undefined4 *)(puVar29 + -0xc) = uVar12;
                *(undefined4 *)(puVar29 + -0x10) = 1;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;
                __printf_chk();
              }
              local_278 = local_23c;
              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));
              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;
              *(int **)(puVar29 + -0x10) = local_1f0;
              *(undefined4 *)(puVar29 + -0x14) = 1;
              *(uint *)(puVar29 + -0x18) = local_284;
              *(char **)(puVar29 + -0x1c) = local_1f8;
              *(char **)(puVar29 + -0x20) = local_200;
              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;
              cVar6 = FUN_000156e0();
              if (cVar6 != '\0') goto LAB_00019094;
              local_220 = (code *)0x0;
              bVar25 = 0;
            }
            else {
              if ((int)local_228 < 0) goto LAB_0001926b;
              bVar40 = *(byte *)((int)local_1f0 + 0x25);
              *(int **)(puVar29 + -4) = local_1f0;
              *(undefined4 *)(puVar29 + -8) = 0;
              *(uint *)(puVar29 + -0xc) = (uint)bVar40;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;
              cVar6 = FUN_00015960();
              if (cVar6 != '\0') {
LAB_00017c77:
                local_278 = 0;
                goto LAB_00017c81;
              }
              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));
              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;
              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);
              local_220 = (code *)0x0;
              bVar25 = 0;
LAB_00018028:
              *(int **)(puVar29 + -0x10) = local_228;
              *(undefined4 *)(puVar29 + -0x14) = 0x18036;
              iVar10 = close(*(int *)(puVar29 + -0x10));
              if (iVar10 < 0) {
                *(int *)(puVar29 + -4) = iVar10;
                *(int *)(puVar29 + -8) = iVar10;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x19663;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;
                piVar14 = __errno_location();
                *(undefined4 *)(puVar29 + -0x14) = uVar11;
                *(undefined4 *)(puVar29 + -0x18) = uVar12;
                *(int *)(puVar29 + -0x1c) = *piVar14;
                *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;
                error();
              }
            }
            *(undefined1 **)(puVar29 + -0x10) = local_208;
            *(undefined4 *)(puVar29 + -0x14) = 0x18056;
            iVar10 = close(*(int *)(puVar29 + -0x10));
            if (iVar10 < 0) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;
              error();
            }
            *(code **)(puVar29 + -0x10) = local_220;
            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;
            free(*(void **)(puVar29 + -0x10));
            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
            bVar40 = bVar25;
            goto joined_r0x00018387;
          }
          bVar25 = 0;
          if (local_238 == (stat64 *)0x1000) {
            local_94.st_dev._0_4_ = (byte *)0x0;
            local_94.st_dev._4_4_ = 0;
            uVar9 = ~local_23c & local_204;
            *(stat64 **)(puVar29 + -4) = &local_94;
            *(uint *)(puVar29 + -8) = uVar9;
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;
            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));
            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
            if (iVar10 != 0) {
              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;
              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));
              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
              if (iVar10 != 0) {
                *(int *)(puVar29 + -4) = iVar10;
                *(int *)(puVar29 + -8) = iVar10;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;
                uVar11 = FUN_00020540();
                puVar33 = puVar29 + -8;
                *(undefined4 *)(puVar29 + -8) = 5;
                pcVar20 = "cannot create fifo %s";
                goto LAB_00016f90;
              }
            }
          }
          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {
            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;
            *(stat64 **)(puVar29 + -4) = &local_94;
            local_94.st_dev._4_4_ = local_190;
            *(uint *)(puVar29 + -8) = ~local_23c & local_204;
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;
            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));
            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0xc) = local_1f8;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -8;
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "cannot create special file %s";
              goto LAB_00016f90;
            }
          }
          else {
            if (local_238 != (stat64 *)0xa000) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "%s has unknown file type";
              goto LAB_00016e8b;
            }
            *(undefined4 *)(puVar29 + -0xc) = local_188;
            *(char **)(puVar29 + -0x10) = local_200;
            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;
            pcVar20 = (char *)FUN_0001b850();
            if (pcVar20 == (char *)0x0) {
              *(undefined4 *)(puVar29 + -4) = 0;
              *(undefined4 *)(puVar29 + -8) = 0;
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -8;
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "cannot read symbolic link %s";
              goto LAB_00016f90;
            }
            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);
            *(char **)(puVar29 + -8) = local_1f8;
            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;
            *(char **)(puVar29 + -0x10) = pcVar20;
            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;
            iVar10 = FUN_0001ade0();
            if (iVar10 < 0) {
              *(undefined4 *)(puVar29 + -4) = 0x19315;
              piVar14 = __errno_location();
              local_208 = (undefined1 *)*piVar14;
              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;
              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||
                 ((local_154.st_mode & 0xf000) != 0xa000)) {
LAB_0001933e:
                *(char **)(puVar29 + -0x10) = pcVar20;
                *(undefined4 *)(puVar29 + -0x14) = 0x19347;
                free(*(void **)(puVar29 + -0x10));
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x19356;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x14) = uVar11;
                *(undefined4 *)(puVar29 + -0x18) = uVar12;
                *(undefined1 **)(puVar29 + -0x1c) = local_208;
                *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;
                error();
              }
              uVar9 = 0xffffffff;
              pcVar18 = pcVar20;
              do {
                if (uVar9 == 0) break;
                uVar9 = uVar9 - 1;
                cVar6 = *pcVar18;
                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;
              } while (cVar6 != '\0');
              iVar10 = ~uVar9 - 1;
              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))
              goto LAB_0001933e;
              *(int *)(puVar29 + -4) = iVar10;
              *(int *)(puVar29 + -8) = iVar10;
              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;
              iVar10 = FUN_0001b850();
              if (iVar10 == 0) goto LAB_0001933e;
              *(int *)(puVar29 + -4) = iVar10;
              *(int *)(puVar29 + -8) = iVar10;
              *(char **)(puVar29 + -0xc) = pcVar20;
              *(int *)(puVar29 + -0x10) = iVar10;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;
              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));
              if (iVar8 != 0) {
                *(int *)(puVar29 + -0x10) = iVar10;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;
                free(*(void **)(puVar29 + -0x10));
                goto LAB_0001933e;
              }
              *(int *)(puVar29 + -0x10) = iVar10;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;
              free(*(void **)(puVar29 + -0x10));
              *(char **)(puVar29 + -0x10) = pcVar20;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;
              free(*(void **)(puVar29 + -0x10));
            }
            else {
LAB_00018a69:
              *(char **)(puVar29 + -0x10) = pcVar20;
              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;
              free(*(void **)(puVar29 + -0x10));
            }
            if (*(char *)((int)local_1f0 + 0x25) != '\0') {
              *(undefined4 *)(puVar29 + -4) = 0x193dc;
              FUN_00015060();
            }
            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);
            bVar40 = *(byte *)((int)local_1f0 + 0x1d);
            bVar25 = bVar40;
            if (bVar40 != 0) {
              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;
              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;
              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),
                              *(__gid_t *)(puVar29 + -8));
              if (iVar10 == 0) {
                bVar25 = 0;
                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);
              }
              else {
                *(int **)(puVar29 + -0x10) = local_1f0;
                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;
                cVar6 = FUN_00015b20();
                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);
                if (cVar6 == '\0') {
                  *(char **)(puVar29 + -4) = pcVar20;
                  *(undefined4 *)(puVar29 + -8) = 5;
                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";
                  *(undefined4 *)(puVar29 + -0x10) = 0;
                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;
                  uVar11 = dcgettext();
                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;
                  piVar14 = __errno_location();
                  *(char **)(puVar29 + -0x14) = local_1f8;
                  *(undefined4 *)(puVar29 + -0x18) = uVar11;
                  *(int *)(puVar29 + -0x1c) = *piVar14;
                  *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;
                  error();
                }
                bVar25 = 0;
              }
            }
          }
LAB_000166da:
          bVar40 = local_238 != (stat64 *)0x4000;
          if ((byte)local_1f4 == '\0') {
            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));
            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;
            if (bVar7 != 0) {
              bVar2 = *(byte *)((int)local_1f0 + 0x25);
              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {
                *(int **)(puVar29 + -4) = local_1f0;
                *(undefined4 *)(puVar29 + -8) = 0;
                *(uint *)(puVar29 + -0xc) = (uint)bVar2;
                *(char **)(puVar29 + -0x10) = local_1f8;
                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;
                bVar40 = FUN_00015960();
                if (bVar40 == 0) {
                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));
                  bVar40 = bVar7;
                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;
                }
              }
            }
          }
          uVar9 = 1;
          if ((byte)local_1fc != '\0') {
            local_24c = local_24c & 0xffffff00;
            goto LAB_00016722;
          }
LAB_00016794:
          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))
          goto LAB_0001614a;
        }
        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {
LAB_00016870:
          if ((char)local_208 == '\0') goto LAB_0001687d;
          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;
          *(int **)(puVar29 + -0xc) = local_1f0;
          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;
          *(undefined4 *)(puVar29 + -0x14) = 0x17511;
          cVar6 = FUN_00014b00();
          if (cVar6 != '\0') goto LAB_0001614a;
          cVar6 = (char)local_1f0[10];
        }
        else {
          local_30 = local_174;
          local_2c = local_170;
          local_28 = local_16c;
          local_24 = local_168;
          if ((char)local_208 != '\0') {
            *(__time_t **)(puVar29 + -0xc) = &local_30;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x16805;
            iVar10 = FUN_000225b0();
            if (iVar10 != 0) {
              *(undefined4 *)(puVar29 + -4) = 0x16811;
              piVar14 = __errno_location();
              if (*piVar14 != 0x26) goto LAB_00016816;
            }
            goto LAB_00016870;
          }
          *(__time_t **)(puVar29 + -0xc) = &local_30;
          *(char **)(puVar29 + -0x10) = local_1f8;
          *(undefined4 *)(puVar29 + -0x14) = 0x18652;
          iVar10 = FUN_00022580();
          if (iVar10 != 0) {
LAB_00016816:
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(undefined4 *)(puVar29 + -0x10) = 4;
            *(undefined4 *)(puVar29 + -0x14) = 0x16826;
            uVar11 = FUN_00020540();
            *(undefined4 *)(puVar29 + -8) = 5;
            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;
            local_1fc = dcgettext();
            *(undefined4 *)(puVar29 + -0x14) = 0x16846;
            piVar14 = __errno_location();
            uVar9 = local_1fc;
            *(undefined4 *)(puVar29 + -0x14) = uVar11;
            *(uint *)(puVar29 + -0x18) = uVar9;
            *(int *)(puVar29 + -0x1c) = *piVar14;
            *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;
            error();
          }
LAB_0001687d:
          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&
             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||
              (local_1b4._28_4_ != local_154.st_gid)))) {
            *(stat64 **)(puVar29 + -8) = &local_154;
            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;
            *(undefined1 **)(puVar29 + -0x10) = local_1b4;
            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;
            iVar10 = FUN_00015b60();
            if (iVar10 == -1) goto LAB_00016148;
            if (iVar10 == 0) {
              local_204 = local_204 & 0xfffff1ff;
            }
          }
          if (*(char *)((int)local_1f0 + 0x27) != '\0') {
            *(int **)(puVar29 + -0xc) = local_1f0;
            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;
            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;
            cVar6 = FUN_00014b00();
            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;
          }
          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {
            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {
              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {
                if (local_23c == 0) {
LAB_0001694e:
                  if ((byte)local_224 == '\0') goto LAB_0001614a;
                }
                else {
                  *(undefined4 *)(puVar29 + -4) = 0x191ba;
                  uVar22 = FUN_00015d90();
                  local_23c = local_23c & ~uVar22;
                  if (local_23c == 0) goto LAB_0001694e;
                  if ((byte)local_224 != '\x01') {
                    if ((byte)local_1f4 != '\0') {
                      *(uint *)(puVar29 + -4) = ~uVar22;
                      *(stat64 **)(puVar29 + -8) = &local_154;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(undefined4 *)(puVar29 + -0x10) = 3;
                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;
                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                          *(stat64 **)(puVar29 + -8));
                      if (iVar10 != 0) {
                        *(int *)(puVar29 + -4) = iVar10;
                        *(int *)(puVar29 + -8) = iVar10;
                        puVar30 = puVar29 + -0xc;
                        *(char **)(puVar29 + -0xc) = local_1f8;
                        goto LAB_0001620e;
                      }
                    }
                    local_270 = local_154.st_mode;
                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;
                  }
                }
                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;
                *(char **)(puVar29 + -0x10) = local_1f8;
                *(undefined4 *)(puVar29 + -0x14) = 0x16976;
                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));
                if (iVar10 != 0) {
                  *(int *)(puVar29 + -4) = iVar10;
                  *(int *)(puVar29 + -8) = iVar10;
                  *(char **)(puVar29 + -0xc) = local_1f8;
                  *(undefined4 *)(puVar29 + -0x10) = 4;
                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;
                  uVar11 = FUN_00020540();
                  *(undefined4 *)(puVar29 + -8) = 5;
                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;
                  *(undefined4 *)(puVar29 + -0x10) = 0;
                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;
                  local_1f4 = (char *)dcgettext();
                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;
                  piVar14 = __errno_location();
                  pcVar20 = local_1f4;
                  *(undefined4 *)(puVar29 + -0x14) = uVar11;
                  *(char **)(puVar29 + -0x18) = pcVar20;
                  *(int *)(puVar29 + -0x1c) = *piVar14;
                  *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;
                  error();
                }
                goto LAB_0001614a;
              }
              uVar22 = 0x1b6;
              if ((local_204 & 0x7000) == 0x4000) {
                uVar22 = 0x1ff;
              }
              *(undefined4 *)(puVar29 + -4) = 0x191a8;
              uVar21 = FUN_00015d90();
              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;
            }
            else {
              *(int *)(puVar29 + -8) = local_1f0[4];
            }
            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;
            iVar10 = FUN_0001b7d0();
            if (iVar10 == 0) goto LAB_0001614a;
            goto LAB_00016148;
          }
          *(uint *)(puVar29 + -0x10) = local_204;
          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;
          *(char **)(puVar29 + -0x18) = local_1f8;
          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;
          *(char **)(puVar29 + -0x20) = local_200;
          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;
          iVar10 = FUN_0001b720();
          if (iVar10 == 0) goto LAB_0001614a;
          cVar6 = (char)local_1f0[9];
        }
        if (cVar6 == '\0') goto LAB_0001614a;
      }
    }
  }
LAB_00016148:
  uVar9 = 0;
LAB_0001614a:
  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {
    return uVar9;
  }
                    /* WARNING: Subroutine does not return */
  *(undefined4 *)(puVar29 + -4) = 0x19855;
  FUN_0002bcb0();
}


PUSH EBP
MOV EBP,ESP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x000132c0
ADD EBX,0x23215
SUB ESP,0x27c
MOV dword ptr [EBP + 0xfffffe04],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0x10]
MOV EDI,dword ptr [EBP + 0x1c]
MOV dword ptr [EBP + 0xfffffe0c],EDX
MOV dword ptr [EBP + 0xfffffdd8],EAX
MOV EDX,dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EBP + 0xc]
MOV dword ptr [EBP + 0xfffffde4],EDI
MOV dword ptr [EBP + 0xfffffde8],EDX
MOV EDX,dword ptr [EBP + 0x20]
MOV dword ptr [EBP + 0xfffffddc],EAX
MOV EAX,dword ptr [EBP + 0x14]
MOV dword ptr [EBP + 0xfffffdfc],EDX
MOV dword ptr [EBP + 0xfffffe14],ESI
MOV dword ptr [EBP + 0xfffffe08],EAX
MOV byte ptr [EBP + 0xfffffe10],CL
MOV byte ptr [EBP + 0xfffffde0],AL
MOV EAX,GS:[0x14]
MOV dword ptr [EBP + -0x1c],EAX
XOR EAX,EAX
MOV byte ptr [EDI],0x0
MOVZX EDX,byte ptr [ESI + 0x18]
MOV EDI,dword ptr [ESI + 0x34]
TEST DL,DL
JZ 0x00015e8b
TEST EDI,EDI
JS 0x00016180
MOV ECX,dword ptr [EBP + 0xfffffdfc]
TEST EDI,EDI
SETZ byte ptr [EBP + 0xfffffe10]
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
TEST ECX,ECX
JZ 0x00015e8b
MOV byte ptr [ECX],AL
TEST EDI,EDI
JZ 0x000161c0
MOV ESI,dword ptr [EBP + 0xfffffe04]
CMP EDI,0x11
JZ 0x00016168
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x4],0x2
JZ 0x000161e8
SUB ESP,0x4
LEA EAX,[EBP + 0xfffffe50]
PUSH EAX
PUSH ESI
PUSH 0x3
CALL 0x00012860
ADD ESP,0x10
TEST EAX,EAX
SETNZ AL
TEST AL,AL
JNZ 0x0001620a
MOV EAX,dword ptr [EBP + 0xfffffe60]
MOV dword ptr [EBP + 0xfffffe00],EAX
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x00016c18
CMP byte ptr [EBP + 0xfffffe08],0x0
JZ 0x00015f4e
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x40]
TEST EAX,EAX
JZ 0x00015f4e
MOV EDX,dword ptr [EBP + 0xfffffe00]
LEA ECX,[EBP + 0xfffffe50]
MOV dword ptr [EBP + 0xfffffdf8],ECX
AND EDX,0xf000
CMP EDX,0x4000
JZ 0x00015f36
MOV ECX,dword ptr [EBP + 0xfffffe14]
MOV EDX,dword ptr [ECX]
TEST EDX,EDX
JZ 0x00016b50
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffdf8]
PUSH dword ptr [EBP + 0xfffffe04]
PUSH EAX
CALL 0x0001d1d0
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdf8],0x1
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x4]
CMP EAX,0x4
JZ 0x00015f7b
CMP EAX,0x3
SETZ AL
MOVZX EAX,AL
AND EAX,dword ptr [EBP + 0xfffffe08]
MOV dword ptr [EBP + 0xfffffdf8],EAX
CMP byte ptr [EBP + 0xfffffe10],0x0
JNZ 0x00016248
CMP EDI,0x11
JZ 0x00016bf0
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
CMP EAX,0x8000
JZ 0x00016b80
CMP EAX,0xa000
MOV ECX,0x100
SETZ DL
CMP EAX,0x4000
SETZ AL
OR EDX,EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x14]
XOR EAX,0x1
OR DL,AL
MOV byte ptr [EBP + 0xfffffdf0],DL
JZ 0x00016b80
SUB ESP,0xc
LEA ESI,[EBP + 0xfffffeb0]
PUSH ECX
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH -0x64
PUSH 0x3
CALL 0x00012290
ADD ESP,0x20
TEST EAX,EAX
JNZ 0x000169f0
MOV byte ptr [EBP + 0xfffffdd4],0x0
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x8],0x2
JZ 0x00016048
MOV EAX,dword ptr [EBP + 0xfffffea8]
MOV EDX,dword ptr [EBP + 0xfffffeac]
XOR EAX,dword ptr [EBP + 0xffffff08]
XOR EDX,dword ptr [EBP + 0xffffff0c]
OR EDX,EAX
JZ 0x000180e0
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x4],0x2
JZ 0x000175f8
LEA ESI,[ESI]
MOV EDI,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EDI + 0x2d],0x0
JZ 0x00016c80
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x00017410
XOR EAX,EAX
CMP byte ptr [EDI + 0x1f],0x0
JZ 0x000160a1
CMP byte ptr [EDI + 0x18],0x0
MOV EAX,0x1
JZ 0x000160a1
MOV EDX,dword ptr [EBP + 0xfffffeb0]
MOV EAX,dword ptr [EBP + 0xfffffeb4]
XOR EDX,dword ptr [EBP + 0xfffffe50]
XOR EAX,dword ptr [EBP + 0xfffffe54]
OR EDX,EAX
SETNZ AL
MOVZX EAX,AL
PUSH EAX
LEA EAX,[EBP + 0xfffffe50]
PUSH EAX
LEA EAX,[EBP + 0xfffffeb0]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00021ee0
ADD ESP,0x10
TEST EAX,EAX
JS 0x000175e0
MOV EAX,dword ptr [EBP + 0xfffffdfc]
TEST EAX,EAX
JZ 0x000160d3
MOV byte ptr [EAX],0x1
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe54]
PUSH dword ptr [EBP + 0xfffffe50]
PUSH dword ptr [EBP + 0xfffffeac]
PUSH dword ptr [EBP + 0xfffffea8]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001a5c0
ADD ESP,0x20
TEST EAX,EAX
JZ 0x00016570
MOV EBX,dword ptr [EBP + 0xfffffe14]
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffdf8]
MOV ECX,0x1
MOVZX EDX,byte ptr [EBX + 0x2e]
PUSH EDX
MOV EDX,dword ptr [EBP + 0xfffffe0c]
CALL 0x00014f10
ADD ESP,0x10
TEST AL,AL
JNZ 0x00016570
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x25],0x0
JZ 0x00016148
CALL 0x00015060
LEA ESI,[ESI]
XOR ESI,ESI
MOV EBX,dword ptr [EBP + -0x1c]
XOR EBX,dword ptr GS:[0x14]
MOV EAX,ESI
JNZ 0x00019850
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x8],0x2
JZ 0x00015ef0
JMP 0x00015ea2
SUB ESP,0xc
MOV byte ptr [EBP + 0xfffffe10],DL
PUSH 0x1
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH -0x64
PUSH dword ptr [EBP + 0xfffffe04]
PUSH -0x64
CALL 0x000209f0
ADD ESP,0x20
TEST EAX,EAX
JNZ 0x000170c0
MOV EAX,dword ptr [EBP + 0xfffffdfc]
TEST EAX,EAX
JZ 0x000161c0
MOV byte ptr [EAX],0x1
LEA ESI,[ESI]
NOP
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x31],0x0
JNZ 0x000169e0
MOV EAX,dword ptr [EBP + 0xfffffe14]
XOR EDI,EDI
MOV ESI,dword ptr [EBP + 0xfffffe0c]
CMP dword ptr [EAX + 0x4],0x2
JNZ 0x00015eb2
SUB ESP,0x4
LEA EAX,[EBP + 0xfffffe50]
PUSH EAX
PUSH ESI
PUSH 0x3
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
SETNZ AL
TEST AL,AL
JZ 0x00015ed4
SUB ESP,0x8
PUSH ESI
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
PUSH 0x5
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4e6d]
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV byte ptr [EBP + 0xfffffdf0],0x0
MOV dword ptr [EBP + 0xfffffdd4],0x0
CMP byte ptr [EBP + 0xfffffe08],0x0
JZ 0x00016338
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x3c]
TEST EAX,EAX
JZ 0x00016338
MOV ECX,dword ptr [EBP + 0xfffffe14]
MOVZX ESI,byte ptr [ECX + 0x18]
MOV EAX,ESI
TEST AL,AL
JNZ 0x00016338
MOV EAX,dword ptr [ECX]
TEST EAX,EAX
JNZ 0x00016580
CMP byte ptr [EBP + 0xfffffdf0],0x0
LEA EDX,[EBP + 0xfffffeb0]
JZ 0x00017a60
MOV EAX,dword ptr [EDX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x00016338
MOV EAX,dword ptr [EBP + 0xfffffe14]
SUB ESP,0x4
PUSH EDX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EAX + 0x3c]
CALL 0x0001d250
ADD ESP,0x10
TEST AL,AL
JZ 0x00016338
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV dword ptr [EBP + 0xfffffe14],EAX
LEA EAX,[EBX + 0xffff5384]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV EDX,dword ptr [EBP + 0xfffffe14]
MOV dword ptr [ESP],EDI
PUSH EDX
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2e],0x0
JZ 0x0001634e
CMP byte ptr [EAX + 0x18],0x0
JZ 0x00016b18
TEST EDI,EDI
JZ 0x00016518
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2a],0x0
JZ 0x00016450
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
CMP EAX,0x4000
JNZ 0x00016450
MOV EAX,dword ptr [EBP + 0xfffffe50]
MOV EDX,dword ptr [EBP + 0xfffffe54]
CMP byte ptr [EBP + 0xfffffe08],0x0
MOV dword ptr [EBP + 0xfffffdf0],EAX
MOV EAX,dword ptr [EBP + 0xfffffea8]
MOV dword ptr [EBP + 0xfffffdf4],EDX
MOV EDX,dword ptr [EBP + 0xfffffeac]
JNZ 0x000176d8
PUSH dword ptr [EBP + 0xfffffdf4]
PUSH dword ptr [EBP + 0xfffffdf0]
PUSH EDX
PUSH EAX
CALL 0x0001a550
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdf0],EAX
MOV EAX,dword ptr [EBP + 0xfffffdf0]
TEST EAX,EAX
JZ 0x00016438
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffdf0]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x00020ea0
ADD ESP,0x10
TEST AL,AL
JNZ 0x00018af0
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffdf0]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00020ea0
ADD ESP,0x10
TEST AL,AL
JNZ 0x00018ede
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x4]
CMP EAX,0x4
JZ 0x00016438
CMP EAX,0x3
JNZ 0x00018d2d
CMP byte ptr [EBP + 0xfffffe08],0x0
JZ 0x00018d2d
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x18]
JMP 0x00016afb
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x18]
TEST AL,AL
JZ 0x00016aa0
CMP dword ptr [EBP + 0xfffffe64],0x1
JZ 0x00018330
MOV ECX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [ECX + 0x22],0x0
JZ 0x0001648b
MOV EDX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EDX + 0x17],0x0
JZ 0x00016ac0
MOV dword ptr [EBP + 0xfffffdf0],0x0
CMP EDI,0x11
JZ 0x000174a8
CMP EDI,0x16
JZ 0x000185b8
CMP EDI,0x12
JNZ 0x00018090
MOV ESI,dword ptr [EBP + 0xfffffe00]
AND ESI,0xf000
CMP ESI,0x4000
JZ 0x00018250
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012250
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00017538
MOV EDI,dword ptr [EBP + 0xfffffe14]
CMP ESI,0x4000
SETNZ AL
AND AL,byte ptr [EDI + 0x2e]
MOV byte ptr [EBP + 0xfffffe10],AL
JNZ 0x00017a10
MOV dword ptr [EBP + 0xfffffdfc],0x1
MOV byte ptr [EBP + 0xfffffe10],0x1
JMP 0x000165b7
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x18],0x0
JZ 0x000165a0
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2e],0x0
JNZ 0x00018210
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x21],0x0
JNZ 0x000181f8
MOV EAX,dword ptr [EBP + 0xfffffdfc]
TEST EAX,EAX
JZ 0x00016551
MOV byte ptr [EAX],0x1
CMP byte ptr [EBP + 0xfffffe08],0x0
JZ 0x00016570
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x31],0x0
JZ 0x00017a98
LEA ESI,[ESI]
MOV ESI,0x1
JMP 0x0001614a
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2e],0x0
JNZ 0x00016b18
TEST EDI,EDI
JNZ 0x00016356
LEA ESI,[ESI]
NOP
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
MOV dword ptr [EBP + 0xfffffdf0],0x0
MOV dword ptr [EBP + 0xfffffdfc],EAX
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xfff
MOV dword ptr [EBP + 0xfffffdd0],EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2b],0x0
JZ 0x000165e2
MOV EAX,dword ptr [EAX + 0x10]
AND EAX,0xfff
MOV dword ptr [EBP + 0xfffffdd0],EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1d],0x0
JZ 0x00016a40
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe14]
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH dword ptr [EBP + 0xfffffe00]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x000156e0
ADD ESP,0x20
TEST AL,AL
JZ 0x00016148
MOV EAX,dword ptr [EBP + 0xfffffdd0]
AND EAX,0x3f
MOV dword ptr [EBP + 0xfffffdc8],EAX
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
MOV dword ptr [EBP + 0xfffffdcc],EAX
CMP EAX,0x4000
JZ 0x00016e08
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x2c]
MOV byte ptr [EBP + 0xfffffdfc],AL
TEST AL,AL
JZ 0x00016eb0
MOV EAX,dword ptr [EBP + 0xfffffe04]
CMP byte ptr [EAX],0x2f
JZ 0x000166af
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001cf20
MOV ECX,0x2
MOV EDX,EAX
LEA EAX,[EBX + 0xffff3142]
MOV ESI,EAX
MOV EDI,EDX
CMPSB.REPE ES:EDI,ESI
SETA CL
SBB CL,0x0
ADD ESP,0x10
TEST CL,CL
JNZ 0x00017ac8
SUB ESP,0xc
PUSH EDX
CALL 0x00012970
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe14]
XOR EDI,EDI
MOVZX EAX,byte ptr [EAX + 0x16]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH -0x64
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001ade0
ADD ESP,0x10
TEST EAX,EAX
JS 0x0001897a
CMP dword ptr [EBP + 0xfffffdcc],0x4000
SETNZ DL
CMP byte ptr [EBP + 0xfffffe10],0x0
JNZ 0x0001670d
MOV ECX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [ECX + 0x14]
MOV byte ptr [EBP + 0xfffffdf8],AL
XOR EAX,0x1
AND AL,DL
MOV ESI,EAX
JNZ 0x000177b0
CMP byte ptr [EBP + 0xfffffe08],0x0
MOV ESI,0x1
JZ 0x00016794
MOV byte ptr [EBP + 0xfffffdb8],0x0
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV ECX,dword ptr [EAX + 0x3c]
TEST ECX,ECX
JZ 0x00016780
SUB ESP,0x4
LEA ESI,[EBP + 0xffffff70]
MOV byte ptr [EBP + 0xfffffe08],DL
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
CALL 0x00012890
ADD ESP,0x10
MOVZX EDX,byte ptr [EBP + 0xfffffe08]
TEST EAX,EAX
JNZ 0x00016780
MOV EAX,dword ptr [EBP + 0xfffffe14]
SUB ESP,0x4
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EAX + 0x3c]
CALL 0x0001d1d0
MOVZX EDX,byte ptr [EBP + 0xfffffe08]
ADD ESP,0x10
LEA ESI,[ESI]
MOVZX EAX,byte ptr [EBP + 0xfffffdb8]
MOVZX ESI,byte ptr [EBP + 0xfffffde0]
MOV byte ptr [EBP + 0xfffffde0],AL
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x17],0x0
JZ 0x000167a8
TEST DL,DL
JNZ 0x0001614a
MOV EAX,EDI
TEST AL,AL
JNZ 0x0001614a
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1f],0x0
JZ 0x00016870
MOV EAX,dword ptr [EBP + 0xfffffe90]
CMP byte ptr [EBP + 0xfffffdfc],0x0
MOV dword ptr [EBP + -0x2c],EAX
MOV EAX,dword ptr [EBP + 0xfffffe94]
MOV dword ptr [EBP + -0x28],EAX
MOV EAX,dword ptr [EBP + 0xfffffe98]
MOV dword ptr [EBP + -0x24],EAX
MOV EAX,dword ptr [EBP + 0xfffffe9c]
MOV dword ptr [EBP + -0x20],EAX
JZ 0x00018640
SUB ESP,0x8
LEA EAX,[EBP + -0x2c]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x000225b0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00016870
CALL 0x00012590
CMP dword ptr [EAX],0x26
JZ 0x00016870
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4fc1]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [EBP + 0xfffffe08],EAX
CALL 0x00012590
MOV EDX,dword ptr [EBP + 0xfffffe08]
PUSH EDI
PUSH EDX
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
CMP byte ptr [EBP + 0xfffffdfc],0x0
JNZ 0x000174e0
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1d],0x0
JZ 0x000168f0
CMP byte ptr [EBP + 0xfffffe10],0x0
JNZ 0x000168a4
MOV EAX,dword ptr [EBP + 0xfffffec8]
CMP dword ptr [EBP + 0xfffffe68],EAX
JZ 0x00018f26
SUB ESP,0x4
LEA EAX,[EBP + 0xfffffeb0]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV ECX,0xffffffff
PUSH EAX
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
PUSH EAX
LEA EAX,[EBP + 0xfffffe50]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
CALL 0x00015b60
ADD ESP,0x10
CMP EAX,-0x1
JZ 0x00016148
TEST EAX,EAX
JNZ 0x000168f0
AND dword ptr [EBP + 0xfffffe00],0xfffff1ff
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x27],0x0
JNZ 0x00018c55
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1e],0x0
JNZ 0x00018398
CMP byte ptr [EAX + 0x18],0x0
JNZ 0x00018398
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2b],0x0
JNZ 0x00018ebb
MOV EDI,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
TEST byte ptr [EDI + 0x20],AL
JNZ 0x00019184
MOV EAX,dword ptr [EBP + 0xfffffdc8]
TEST EAX,EAX
JNZ 0x000191b5
CMP byte ptr [EBP + 0xfffffde0],0x0
JZ 0x0001614a
SUB ESP,0x8
MOV EAX,dword ptr [EBP + 0xfffffd94]
OR EAX,dword ptr [EBP + 0xfffffdc8]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012820
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001614a
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4fd9]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [EBP + 0xfffffe10],EAX
CALL 0x00012590
MOV EDX,dword ptr [EBP + 0xfffffe10]
PUSH EDI
PUSH EDX
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x24],0x0
JZ 0x0001614a
JMP 0x00016148
XOR EDI,EDI
JMP 0x00015ef0
CALL 0x00012590
MOV EDX,EAX
MOV EAX,dword ptr [EAX]
CMP EAX,0x28
JZ 0x00017050
MOV byte ptr [EBP + 0xfffffdd4],0x1
CMP EAX,0x2
JNZ 0x00017070
MOV byte ptr [EBP + 0xfffffdf0],0x0
CMP EDI,0x11
JZ 0x00016005
MOVZX EAX,byte ptr [EBP + 0xfffffdd4]
MOV dword ptr [EBP + 0xfffffdd4],0x0
MOV byte ptr [EBP + 0xfffffe10],AL
JMP 0x00016259
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
MOV dword ptr [EBP + 0xfffffdcc],EAX
CMP EAX,0x4000
JZ 0x00016dc8
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe14]
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH dword ptr [EBP + 0xfffffe00]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x000156e0
ADD ESP,0x20
MOV dword ptr [EBP + 0xfffffdc8],0x0
TEST AL,AL
JNZ 0x0001664e
JMP 0x00016148
MOV ECX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [ECX + 0x22],0x0
JZ 0x000165a0
MOV EDX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EDX + 0x17],0x0
JNZ 0x000175c8
CMP dword ptr [EBP + 0xfffffe64],0x1
JA 0x00017708
MOV ESI,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EBP + 0xfffffe08],0x0
MOV EDX,dword ptr [ESI + 0x4]
JZ 0x00016ae8
CMP EDX,0x3
JZ 0x00017708
MOV dword ptr [EBP + 0xfffffdf0],0x0
CMP EDX,0x4
JZ 0x00017708
TEST AL,AL
JNZ 0x00016495
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
MOV dword ptr [EBP + 0xfffffdfc],EAX
JMP 0x000165b7
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x0001634e
MOV ECX,dword ptr [EBP + 0xfffffdd4]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffe04]
CALL 0x00014d30
JMP 0x0001634e
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffdf8]
PUSH dword ptr [EBP + 0xfffffe04]
PUSH EAX
CALL 0x0001d250
ADD ESP,0x10
MOV ESI,EAX
TEST AL,AL
JNZ 0x000186b8
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x40]
JMP 0x00015f36
MOV ESI,dword ptr [EBP + 0xfffffe14]
MOV ECX,0x100
MOVZX EAX,byte ptr [ESI + 0x18]
MOV byte ptr [EBP + 0xfffffdf0],AL
TEST AL,AL
JNZ 0x00015fd9
MOVZX EAX,byte ptr [ESI + 0x2c]
MOV byte ptr [EBP + 0xfffffdf0],AL
TEST AL,AL
JNZ 0x00015fd9
MOVZX EAX,byte ptr [ESI + 0x17]
MOV byte ptr [EBP + 0xfffffdf0],AL
TEST AL,AL
JNZ 0x00015fd9
MOV EAX,dword ptr [ESI]
MOV byte ptr [EBP + 0xfffffdf0],0x1
TEST EAX,EAX
JNZ 0x00015fd9
MOVZX EAX,byte ptr [ESI + 0x15]
XOR ECX,ECX
TEST AL,AL
MOV byte ptr [EBP + 0xfffffdf0],AL
SETNZ CL
SHL ECX,0x8
JMP 0x00015fd9
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x8],0x2
JNZ 0x00015f91
MOV byte ptr [EBP + 0xfffffdd4],0x0
MOV byte ptr [EBP + 0xfffffdf0],0x0
JMP 0x00016048
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX ESI,byte ptr [EAX + 0x2a]
MOV EAX,ESI
TEST AL,AL
JNZ 0x00015ef0
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0x10
MOV EDI,EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x19],0x0
JNZ 0x000188e0
SUB ESP,0x4
LEA EAX,[EBX + 0xffff51f8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
ADD ESP,0x10
PUSH EDI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x18],0x0
JNZ 0x00017420
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x00016cbd
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x8]
CMP EAX,0x2
JZ 0x00016570
CMP EAX,0x3
JZ 0x00018900
CMP byte ptr [EBP + 0xfffffe10],0x0
JNZ 0x00016570
MOV EAX,dword ptr [EBP + 0xfffffec0]
MOV EDI,dword ptr [EBP + 0xfffffe00]
MOV EDX,EAX
AND EDI,0xf000
AND EDX,0xf000
CMP EDX,0x4000
JZ 0x00018280
CMP EDI,0x4000
JZ 0x00017800
MOV ESI,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EBP + 0xfffffe08],0x0
MOV ESI,dword ptr [ESI]
JZ 0x00016d69
CMP ESI,0x3
JZ 0x000186f0
SUB ESP,0x4
LEA EAX,[EBP + 0xfffffeb0]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EAX + 0x3c]
CALL 0x0001d250
ADD ESP,0x10
TEST AL,AL
JNZ 0x0001903a
CMP EDI,0x4000
JZ 0x00016d61
MOV EAX,dword ptr [EBP + 0xfffffec0]
MOV EDX,EAX
AND EDX,0xf000
CMP EDX,0x4000
JZ 0x0001828c
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV ESI,dword ptr [EAX]
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x18]
TEST AL,AL
JNZ 0x00018740
TEST ESI,ESI
JNZ 0x00018700
MOV EDX,dword ptr [EBP + 0xfffffec0]
AND EDX,0xf000
CMP EDX,0x4000
SETZ DL
OR DL,AL
MOV ESI,EDX
JZ 0x000187f0
MOVZX EAX,byte ptr [EBP + 0xfffffdd4]
MOV EDI,0x11
MOV dword ptr [EBP + 0xfffffdd4],0x0
MOV byte ptr [EBP + 0xfffffe10],AL
JMP 0x00016259
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe14]
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH dword ptr [EBP + 0xfffffe00]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x000156e0
ADD ESP,0x20
TEST AL,AL
JZ 0x00016148
MOV EAX,dword ptr [EBP + 0xfffffdd0]
AND EAX,0x12
MOV dword ptr [EBP + 0xfffffdc8],EAX
MOV EAX,dword ptr [EBP + 0xfffffddc]
MOV ESI,dword ptr [EBP + 0xfffffea8]
MOV EDI,dword ptr [EBP + 0xfffffeac]
TEST EAX,EAX
JZ 0x000170cc
MOV ECX,dword ptr [EBP + 0xfffffe50]
MOV EDX,dword ptr [EBP + 0xfffffe54]
MOV dword ptr [EBP + 0xfffffdf8],ECX
MOV dword ptr [EBP + 0xfffffde0],EDX
JMP 0x00016e4a
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x000170e8
MOV EDX,dword ptr [EAX + 0x4]
MOV ECX,dword ptr [EAX + 0x8]
XOR EDX,ESI
XOR ECX,EDI
OR ECX,EDX
JNZ 0x00016e40
MOV EDX,dword ptr [EBP + 0xfffffdf8]
MOV ECX,dword ptr [EBP + 0xfffffde0]
XOR EDX,dword ptr [EAX + 0xc]
XOR ECX,dword ptr [EAX + 0x10]
OR ECX,EDX
JNZ 0x00016e40
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
PUSH 0x5
MOV ESI,EAX
LEA EAX,[EBX + 0xffff5564]
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x17],0x0
JNZ 0x00018360
MOV EAX,dword ptr [EBP + 0xfffffdcc]
CMP EAX,0x8000
JZ 0x00017b60
MOV EDI,dword ptr [EBP + 0xfffffe14]
CMP EAX,0xa000
SETNZ AL
AND AL,byte ptr [EDI + 0x14]
MOV EDI,EAX
JNZ 0x00017b60
CMP dword ptr [EBP + 0xfffffdcc],0x1000
JZ 0x00018d85
MOV ECX,dword ptr [EBP + 0xfffffdcc]
MOV EAX,ECX
AND AH,0xbf
CMP EAX,0x2000
SETZ DL
CMP ECX,0xc000
SETZ AL
OR DL,AL
JZ 0x00018a14
MOV EAX,dword ptr [EBP + 0xfffffe70]
MOV EDX,dword ptr [EBP + 0xfffffe74]
MOV dword ptr [EBP + 0xffffff70],EAX
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffdc8]
MOV dword ptr [EBP + 0xffffff74],EDX
NOT EAX
AND EAX,dword ptr [EBP + 0xfffffe00]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x1
CALL 0x00012880
MOV ECX,EDI
ADD ESP,0x10
MOV byte ptr [EBP + 0xfffffdfc],CL
TEST EAX,EAX
JZ 0x000166da
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
PUSH 0x5
MOV EDI,EAX
LEA EAX,[EBX + 0xffff5020]
LEA ESI,[ESI]
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x25],0x0
JNZ 0x000177a0
MOV EAX,dword ptr [EBP + 0xfffffdf0]
TEST EAX,EAX
JZ 0x00018308
MOV EAX,dword ptr [EBP + 0xfffffdd4]
TEST EAX,EAX
JZ 0x00016148
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH EAX
CALL 0x00012490
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000182e0
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2e],0x0
JZ 0x00016148
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffdd4]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff5088]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH ESI
PUSH EAX
PUSH 0x1
CALL 0x000125f0
ADD ESP,0x20
JMP 0x00016148
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x16],0x0
JZ 0x00017070
MOV byte ptr [EBP + 0xfffffdd4],0x0
JMP 0x00016a12
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV dword ptr [EBP + 0xfffffe14],EDX
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff4e6d]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV EDX,dword ptr [EBP + 0xfffffe14]
PUSH ESI
XOR ESI,ESI
PUSH EAX
PUSH dword ptr [EDX]
PUSH 0x0
CALL 0x00012390
CALL 0x00012590
MOV EDI,dword ptr [EAX]
JMP 0x00015e6f
MOV EAX,dword ptr [EBP + 0xfffffe50]
MOV dword ptr [EBP + 0xfffffdf8],EAX
MOV EAX,dword ptr [EBP + 0xfffffe54]
MOV dword ptr [EBP + 0xfffffde0],EAX
LEA ESI,[ESI]
SUB ESP,0x20
MOV ECX,dword ptr [EBP + 0xfffffddc]
LEA EAX,[ESP + 0xf]
AND EAX,0xfffffff0
CMP byte ptr [EBP + 0xfffffe10],0x0
MOV dword ptr [EAX + 0x8],EDI
MOV EDI,dword ptr [EBP + 0xfffffdf8]
MOV dword ptr [EBP + 0xfffffdcc],EAX
MOV dword ptr [EAX + 0xc],EDI
MOV EDI,dword ptr [EBP + 0xfffffde0]
MOV dword ptr [EAX],ECX
MOV dword ptr [EAX + 0x4],ESI
MOV dword ptr [EAX + 0x10],EDI
JNZ 0x00017137
MOV EAX,dword ptr [EBP + 0xfffffec0]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x00018880
MOV EAX,dword ptr [EBP + 0xfffffdc8]
SUB ESP,0x8
NOT EAX
AND EAX,dword ptr [EBP + 0xfffffdd0]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012580
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00018690
SUB ESP,0x4
LEA EAX,[EBP + 0xfffffeb0]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00018cd1
MOV ESI,dword ptr [EBP + 0xfffffec0]
MOV byte ptr [EBP + 0xfffffdb8],0x0
MOV EAX,ESI
AND EAX,0x1c0
CMP EAX,0x1c0
JZ 0x000171ca
MOV EAX,ESI
SUB ESP,0x8
OR EAX,0x1c0
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012820
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffd94],ESI
MOV byte ptr [EBP + 0xfffffdb8],0x1
TEST EAX,EAX
JNZ 0x00019072
MOV EAX,dword ptr [EBP + 0xfffffde8]
CMP byte ptr [EAX],0x0
JZ 0x00018bf3
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2e],0x0
JZ 0x00017228
CMP byte ptr [EAX + 0x18],0x0
JZ 0x00018d15
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff4f11]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
ADD ESP,0xc
PUSH ESI
PUSH EAX
PUSH 0x1
CALL 0x000125f0
ADD ESP,0x10
LEA ESI,[ESI]
NOP
MOV EDI,dword ptr [EBP + 0xfffffdd8]
MOV ECX,dword ptr [EBP + 0xfffffe14]
TEST EDI,EDI
SETNZ AL
AND AL,byte ptr [ECX + 0x1c]
MOV ESI,EAX
JNZ 0x00018668
SUB ESP,0x8
LEA EDI,[EBP + 0xffffff70]
MOV ESI,dword ptr [EBP + 0xfffffe14]
MOV ECX,0x11
MOV dword ptr [EBP + 0xfffffdc4],EDI
MOVSD.REP ES:EDI,ESI
PUSH 0x2
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x000212f0
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdd4],EAX
TEST EAX,EAX
JZ 0x00019143
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x4],0x3
JNZ 0x00017294
MOV dword ptr [EBP + 0xffffff74],0x2
MOV EAX,dword ptr [EBP + 0xfffffdd4]
CMP byte ptr [EAX],0x0
JZ 0x000193c6
LEA EAX,[EBP + 0xfffffe50]
MOV ESI,0x1
MOV EDI,dword ptr [EBP + 0xfffffdd4]
MOV byte ptr [EBP + 0xfffffddc],0x0
MOV dword ptr [EBP + 0xfffffdf8],EAX
LEA EAX,[EBP + 0xffffff10]
MOV dword ptr [EBP + 0xfffffdd0],EAX
LEA EAX,[EBP + 0xfffffe30]
MOV dword ptr [EBP + 0xfffffdd8],EAX
MOV EAX,ESI
MOV byte ptr [EBP + 0xfffffde0],AL
JMP 0x0001730e
SUB ESP,0xc
MOVZX EAX,byte ptr [EBP + 0xffffff10]
OR byte ptr [EBP + 0xfffffddc],AL
PUSH EDI
CALL 0x000124c0
ADD ESP,0x10
LEA EDI,[EDI + EAX*0x1 + 0x1]
CMP byte ptr [EDI],0x0
JZ 0x000173b9
SUB ESP,0x4
PUSH 0x0
PUSH EDI
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001d480
ADD ESP,0xc
PUSH 0x0
PUSH EDI
PUSH dword ptr [EBP + 0xfffffe0c]
MOV dword ptr [EBP + 0xfffffdf0],EAX
CALL 0x0001d480
MOV ECX,dword ptr [EBP + 0xfffffde8]
ADD ESP,0xc
MOV ESI,EAX
MOVZX EAX,byte ptr [ECX]
MOV ECX,dword ptr [EBP + 0xfffffdfc]
PUSH 0x0
MOV EDX,ESI
PUSH dword ptr [EBP + 0xfffffdd8]
PUSH dword ptr [EBP + 0xfffffdd0]
PUSH 0x0
PUSH dword ptr [EBP + 0xfffffdc4]
PUSH dword ptr [EBP + 0xfffffdcc]
PUSH dword ptr [EBP + 0xfffffdf8]
MOV byte ptr [EBP + 0xffffff10],AL
MOV EAX,dword ptr [EBP + 0xfffffdf0]
CALL 0x00015de0
MOV EDX,dword ptr [EBP + 0xfffffde4]
ADD ESP,0x14
AND byte ptr [EBP + 0xfffffde0],AL
MOVZX EAX,byte ptr [EBP + 0xfffffe30]
OR byte ptr [EDX],AL
PUSH ESI
CALL 0x00012970
POP EAX
PUSH dword ptr [EBP + 0xfffffdf0]
CALL 0x00012970
ADD ESP,0x10
CMP byte ptr [EBP + 0xfffffe30],0x0
JZ 0x000172e8
MOVZX ESI,byte ptr [EBP + 0xfffffde0]
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffdd4]
CALL 0x00012970
MOV EDI,dword ptr [EBP + 0xfffffde8]
MOVZX EAX,byte ptr [EBP + 0xfffffddc]
ADD ESP,0x10
MOV byte ptr [EDI],AL
CMP byte ptr [EBP + 0xfffffe08],0x0
JNZ 0x00018620
MOVZX EAX,byte ptr [EBP + 0xfffffdb8]
MOV byte ptr [EBP + 0xfffffdfc],0x0
MOV byte ptr [EBP + 0xfffffde0],AL
JMP 0x000167b2
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x18],0x0
JZ 0x00016cbd
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0x8]
CMP EAX,0x2
JZ 0x00017488
CMP EAX,0x3
JZ 0x00017465
CMP EAX,0x4
JNZ 0x00016cbd
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2f],0x0
JZ 0x00016cbd
MOV EDX,dword ptr [EBP + 0xfffffec0]
MOV EAX,dword ptr [EBP + 0xfffffe0c]
CALL 0x00014980
TEST AL,AL
JNZ 0x00016cbd
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffe14]
LEA ECX,[EBP + 0xfffffec0]
CALL 0x00014de0
TEST AL,AL
JNZ 0x00016cbd
LEA ESI,[ESI]
MOV EDX,dword ptr [EBP + 0xfffffdfc]
TEST EDX,EDX
JZ 0x00016570
MOV EAX,dword ptr [EBP + 0xfffffdfc]
MOV byte ptr [EAX],0x1
JMP 0x00016570
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x00012490
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00016524
CALL 0x00012590
MOV EDI,dword ptr [EAX]
TEST EDI,EDI
JNZ 0x0001649e
JMP 0x00016524
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x27],0x0
JZ 0x0001614a
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe14]
MOV ECX,dword ptr [EBP + 0xfffffe0c]
MOV EDX,0xffffffff
MOV EAX,dword ptr [EBP + 0xfffffe04]
PUSH -0x1
CALL 0x00014b00
ADD ESP,0x10
TEST AL,AL
JNZ 0x0001614a
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x28],0x0
JNZ 0x00016148
JMP 0x0001614a
CALL 0x00012590
CMP dword ptr [EAX],0x2
MOV EDI,EAX
JZ 0x000164e1
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
PUSH 0x0
MOV dword ptr [EBP + 0xfffffe14],EAX
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff5480]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV EDX,dword ptr [EBP + 0xfffffe14]
MOV dword ptr [ESP],EDX
PUSH ESI
PUSH EAX
PUSH dword ptr [EDI]
PUSH 0x0
CALL 0x00012390
MOV dword ptr [EBP + 0xfffffdf0],0x0
JMP 0x00016b03
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x18],0x0
JZ 0x00016ca2
JMP 0x00017420
XOR ECX,ECX
XOR EDI,EDI
MOV EAX,dword ptr [EBP + 0xfffffe60]
MOV dword ptr [EBP + 0xfffffdd0],ESI
LEA EDX,[EBP + 0xfffffe50]
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x000183d0
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV ESI,dword ptr [EAX]
TEST ESI,ESI
JZ 0x00018450
TEST CL,CL
JNZ 0x00018e4b
CMP byte ptr [EAX + 0x18],0x0
JNZ 0x000181e8
CMP dword ptr [EAX + 0x4],0x2
JZ 0x000181e8
MOV EAX,dword ptr [EDX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x000181e8
MOV EAX,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [EAX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x000181e8
LEA ESI,[ESI]
LEA ESI,[ESI]
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
PUSH 0x5
MOV ESI,EAX
LEA EAX,[EBX + 0xffff4e92]
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [ESP],EDI
PUSH ESI
PUSH EAX
PUSH 0x0
XOR ESI,ESI
PUSH 0x0
CALL 0x00012390
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffdf4]
PUSH dword ptr [EBP + 0xfffffdf0]
PUSH EDX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001a5c0
ADD ESP,0x20
MOV dword ptr [EBP + 0xfffffdf0],EAX
JMP 0x000163c9
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe54]
PUSH dword ptr [EBP + 0xfffffe50]
PUSH dword ptr [EBP + 0xfffffeac]
PUSH dword ptr [EBP + 0xfffffea8]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001a5c0
ADD ESP,0x20
MOV dword ptr [EBP + 0xfffffdf0],EAX
MOV EAX,dword ptr [EBP + 0xfffffdf0]
TEST EAX,EAX
JZ 0x00016438
MOV EAX,dword ptr [EBP + 0xfffffe00]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x000163d3
MOV EAX,dword ptr [EBP + 0xfffffe14]
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffdf8]
MOV ECX,0x1
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOVZX EAX,byte ptr [EAX + 0x2e]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffdf0]
CALL 0x00014f10
ADD ESP,0x10
TEST AL,AL
JNZ 0x00016570
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x25],0x0
JZ 0x00016fcb
CALL 0x00015060
JMP 0x00016fbd
CMP byte ptr [ECX + 0x21],0x0
MOVZX EAX,byte ptr [ECX + 0x25]
JNZ 0x000177be
TEST AL,AL
JZ 0x000177f7
PUSH dword ptr [EBP + 0xfffffe14]
PUSH 0x0
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00015960
ADD ESP,0x10
MOV EDX,EAX
TEST AL,AL
JNZ 0x0001670d
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x26]
MOV byte ptr [EBP + 0xfffffe10],AL
TEST AL,AL
JNZ 0x00016fad
MOV EDX,ESI
JMP 0x0001670d
MOV ECX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [ECX + 0x18],0x0
JZ 0x000189dc
MOV ESI,dword ptr [ECX]
TEST ESI,ESI
JZ 0x000189dc
CMP byte ptr [EBP + 0xfffffe08],0x0
JNZ 0x00016d0d
MOV EDX,dword ptr [EBP + 0xfffffe60]
AND EDX,0xf000
CMP EDX,0x4000
JZ 0x0001892a
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001d030
ADD ESP,0x10
CMP byte ptr [EAX],0x2e
MOV EDI,EAX
JZ 0x00018ca0
CMP ESI,0x3
JZ 0x00017990
SUB ESP,0xc
PUSH EDI
CALL 0x000124c0
POP ESI
PUSH dword ptr [EBP + 0xfffffe0c]
MOV dword ptr [EBP + 0xfffffdd4],EAX
CALL 0x0001d030
MOV dword ptr [ESP],EAX
MOV dword ptr [EBP + 0xfffffdd0],EAX
CALL 0x000124c0
LEA ECX,[EBX + 0x770]
MOV ESI,EAX
MOV EDX,dword ptr [ECX]
MOV dword ptr [EBP + 0xfffffdcc],ECX
MOV dword ptr [ESP],EDX
MOV dword ptr [EBP + 0xfffffe10],EDX
CALL 0x000124c0
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdc8],EAX
ADD EAX,ESI
CMP dword ptr [EBP + 0xfffffdd4],EAX
JNZ 0x00017990
MOV ECX,dword ptr [EBP + 0xfffffdd0]
SUB ESP,0x4
PUSH ESI
PUSH ECX
PUSH EDI
CALL 0x000121c0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00017990
SUB ESP,0x8
LEA EDX,[EDI + ESI*0x1]
PUSH dword ptr [EBP + 0xfffffe10]
PUSH EDX
CALL 0x00012090
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00017990
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x000124c0
MOV EDI,EAX
MOV EAX,dword ptr [EBP + 0xfffffdc8]
LEA EAX,[EAX + EDI*0x1 + 0x1]
MOV dword ptr [ESP],EAX
CALL 0x00022ed0
MOV ECX,dword ptr [EBP + 0xfffffdcc]
ADD ESP,0xc
MOV ESI,EAX
MOV EDX,dword ptr [ECX]
PUSH EDI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH EAX
MOV dword ptr [EBP + 0xfffffe10],EDX
CALL 0x00012600
POP EDX
MOV EDX,dword ptr [EBP + 0xfffffe10]
POP ECX
PUSH EDX
PUSH EAX
CALL 0x00012320
ADD ESP,0xc
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
PUSH ESI
PUSH 0x3
CALL 0x00012860
MOV dword ptr [ESP],ESI
MOV EDI,EAX
CALL 0x00012970
ADD ESP,0x10
TEST EDI,EDI
JNZ 0x00017990
MOV EAX,dword ptr [EBP + 0xfffffea8]
MOV EDX,dword ptr [EBP + 0xfffffeac]
XOR EAX,dword ptr [EBP + -0x38]
XOR EDX,dword ptr [EBP + -0x34]
OR EDX,EAX
JZ 0x000197cb
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0xfffffe14]
SUB ESP,0x8
PUSH dword ptr [EAX]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001c300
ADD ESP,0x10
MOV EDI,EAX
MOV dword ptr [EBP + 0xfffffdd4],EAX
TEST EAX,EAX
JZ 0x00018b8e
SUB ESP,0xc
PUSH EAX
CALL 0x000124c0
ADD ESP,0x10
LEA EDX,[EAX + 0x1]
ADD EAX,0x1c
AND EAX,0xfffffff0
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
SUB ESP,0x4
AND EAX,0xfffffff0
PUSH EDX
PUSH EDI
PUSH EAX
CALL 0x00012150
MOV dword ptr [ESP],EDI
MOV EDI,0x11
MOV ESI,EAX
CALL 0x00012970
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdd4],ESI
MOV byte ptr [EBP + 0xfffffe10],0x1
JMP 0x00016259
SUB ESP,0x4
LEA EAX,[EBX + 0xffff4eee]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
POP EDX
POP ECX
PUSH EAX
PUSH 0x1
CALL 0x000125f0
MOV ECX,dword ptr [EBP + 0xfffffdd4]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffe04]
CALL 0x00014d30
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdfc],0x1
JMP 0x000165b7
SUB ESP,0x4
LEA EDX,[EBP + 0xffffff70]
PUSH EDX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
MOV dword ptr [EBP + 0xfffffdf0],EDX
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00016338
MOV EDX,dword ptr [EBP + 0xfffffdf0]
JMP 0x000162a8
SUB ESP,0x4
LEA EAX,[EBP + 0xfffffe50]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EAX + 0x3c]
CALL 0x0001d1d0
ADD ESP,0x10
MOVZX ESI,byte ptr [EBP + 0xfffffe08]
JMP 0x0001614a
SUB ESP,0x4
LEA ECX,[EBP + 0xffffff10]
MOV dword ptr [EBP + 0xfffffdf8],EDX
PUSH ECX
PUSH EAX
PUSH 0x3
CALL 0x00012860
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffdf8]
TEST EAX,EAX
JNZ 0x000166a3
SUB ESP,0x4
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
PUSH EDX
PUSH 0x3
CALL 0x00012860
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffdf8]
TEST EAX,EAX
JNZ 0x000166a3
MOV EAX,dword ptr [EBP + 0xffffff68]
MOV ECX,dword ptr [EBP + 0xffffff6c]
XOR EAX,dword ptr [EBP + -0x38]
XOR ECX,dword ptr [EBP + -0x34]
OR ECX,EAX
JZ 0x00019498
SUB ESP,0xc
PUSH EDX
CALL 0x00012970
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
PUSH 0x0
CALL 0x00020700
ADD ESP,0xc
MOV ESI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff5588]
JMP 0x00016e8b
MOV EAX,dword ptr [EBP + 0xfffffe60]
MOV EDI,dword ptr [EBP + 0xfffffe14]
MOV dword ptr [EBP + 0xfffffdc0],EAX
MOVZX EAX,byte ptr [EDI + 0x23]
MOV byte ptr [EBP + 0xfffffdf8],AL
XOR EAX,EAX
CMP dword ptr [EDI + 0x4],0x2
SETZ AL
SUB ESP,0x8
SHL EAX,0x11
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001d190
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdfc],EAX
TEST EAX,EAX
JS 0x00018cf3
SUB ESP,0x4
LEA EAX,[EBP + 0xffffff10]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH 0x3
CALL 0x00012300
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00018f3d
MOV EAX,dword ptr [EBP + 0xfffffea8]
MOV EDX,dword ptr [EBP + 0xfffffeac]
XOR EAX,dword ptr [EBP + 0xffffff68]
XOR EDX,dword ptr [EBP + 0xffffff6c]
OR EDX,EAX
JNZ 0x00018b4a
MOV EAX,dword ptr [EBP + 0xfffffe50]
MOV EDX,dword ptr [EBP + 0xfffffe54]
XOR EAX,dword ptr [EBP + 0xffffff10]
XOR EDX,dword ptr [EBP + 0xffffff14]
OR EDX,EAX
JNZ 0x00018b4a
MOV EAX,dword ptr [EBP + 0xfffffdd0]
AND EAX,0x1ff
CMP byte ptr [EBP + 0xfffffe10],0x0
MOV dword ptr [EBP + 0xfffffd80],EAX
JNZ 0x00019094
MOV EDI,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EDI + 0x23],0x1
SBB EAX,EAX
SUB ESP,0x8
AND EAX,0xfffffe00
ADD EAX,0x201
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001d190
ADD ESP,0x10
CMP byte ptr [EDI + 0x21],0x0
MOV dword ptr [EBP + 0xfffffddc],EAX
JNZ 0x0001925d
CMP byte ptr [EDI + 0x25],0x0
JNZ 0x0001925d
CMP dword ptr [EBP + 0xfffffddc],0x0
JS 0x0001926b
MOV dword ptr [EBP + 0xfffffd8c],0x0
SUB ESP,0x4
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffddc]
PUSH 0x3
MOV dword ptr [EBP + 0xfffffdc4],EAX
CALL 0x00012300
ADD ESP,0x10
MOV EDI,EAX
TEST EAX,EAX
JNZ 0x000198ea
CMP byte ptr [EBP + 0xfffffdf8],0x0
JZ 0x000194e2
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x38],0x0
JNZ 0x00019d3b
CALL 0x00012520
MOV ECX,dword ptr [EBP + -0x5c]
MOV ESI,EAX
LEA EAX,[ECX + 0xfffe0000]
MOV dword ptr [EBP + 0xfffffda8],ECX
MOV dword ptr [EBP + 0xfffffdac],ECX
CMP EAX,0x1ffe0000
JBE 0x00017d11
MOV dword ptr [EBP + 0xfffffdac],0x20000
MOV ECX,dword ptr [EBP + 0xfffffda8]
LEA EAX,[ECX + -0x1]
CMP EAX,0x1fffffff
MOV EAX,0x200
CMOVBE EAX,ECX
MOV dword ptr [EBP + 0xfffffda8],EAX
PUSH EAX
PUSH EAX
PUSH 0x2
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH dword ptr [EBP + 0xfffffdfc]
CALL 0x0001d110
MOV EAX,dword ptr [EBP + 0xffffff20]
ADD ESP,0x20
AND EAX,0xf000
MOV dword ptr [EBP + 0xfffffde8],EAX
CMP EAX,0x8000
JNZ 0x00017d81
MOV ECX,dword ptr [EBP + 0xffffff40]
XOR EDX,EDX
SAR ECX,0x1f
AND ECX,0x1ff
MOV EAX,ECX
ADD EAX,dword ptr [EBP + 0xffffff3c]
ADC EDX,dword ptr [EBP + 0xffffff40]
SHRD EAX,EDX,0x9
SAR EDX,0x9
CMP dword ptr [EBP + 0xffffff48],EAX
MOV EAX,dword ptr [EBP + 0xffffff4c]
MOV ECX,EDX
SBB EAX,ECX
SETL AL
MOVZX EAX,AL
MOV EDI,EAX
LEA EAX,[ESI + -0x1]
MOV dword ptr [EBP + 0xfffffde4],EAX
MOV EAX,dword ptr [EBP + -0x80]
AND EAX,0xf000
CMP EAX,0x8000
JZ 0x000199a8
MOV EAX,0x7fffffff
SUB EAX,ESI
MOV ECX,EAX
MOV dword ptr [EBP + 0xfffffde4],EAX
MOV EAX,dword ptr [EBP + 0xffffff44]
LEA EDX,[EAX + 0xfffe0000]
CMP EDX,0x1ffe0001
MOV EDX,0x20000
CMOVNC EAX,EDX
PUSH EDX
PUSH ECX
PUSH dword ptr [EBP + 0xfffffdac]
PUSH EAX
CALL 0x0001c430
ADD ESP,0x10
CMP dword ptr [EBP + 0xfffffde8],0x8000
MOV ECX,EAX
JZ 0x00019ee4
MOV EAX,dword ptr [EBP + 0xfffffdac]
XOR EDX,EDX
LEA EAX,[ECX + EAX*0x1 + -0x1]
MOV dword ptr [EBP + 0xfffffde8],EAX
DIV ECX
MOV EAX,dword ptr [EBP + 0xfffffde8]
SUB EAX,EDX
MOV dword ptr [EBP + 0xfffffdac],EAX
JZ 0x00019ed9
CMP dword ptr [EBP + 0xfffffde4],EAX
JC 0x00019ed9
MOV EAX,dword ptr [EBP + 0xfffffdac]
SUB ESP,0xc
ADD EAX,ESI
PUSH EAX
CALL 0x00022ed0
LEA ECX,[ESI + -0x1]
XOR EDX,EDX
ADD ESP,0x10
ADD ECX,EAX
MOV dword ptr [EBP + 0xfffffde4],EAX
MOV EAX,ECX
DIV ESI
SUB ECX,EDX
MOV dword ptr [EBP + 0xfffffd88],ECX
TEST EDI,EDI
JNZ 0x00019e65
MOV EAX,dword ptr [EBP + 0xfffffe14]
LEA EDI,[EBP + 0xfffffe30]
MOV dword ptr [EBP + 0xfffffda8],0x0
MOV dword ptr [EBP + 0xfffffdd8],EDI
CMP dword ptr [EAX + 0xc],0x3
SETZ AL
MOVZX EAX,AL
SUB ESP,0xc
LEA EDX,[EBP + 0xfffffe28]
MOV ECX,dword ptr [EBP + 0xfffffd88]
PUSH EDX
MOV EDX,dword ptr [EBP + 0xfffffddc]
PUSH dword ptr [EBP + 0xfffffdd8]
PUSH -0x1
PUSH -0x1
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffda8]
MOV EAX,dword ptr [EBP + 0xfffffdfc]
PUSH dword ptr [EBP + 0xfffffdac]
CALL 0x000151c0
ADD ESP,0x30
TEST AL,AL
JZ 0x000197c4
CMP byte ptr [EBP + 0xfffffe28],0x0
JNZ 0x00019fa7
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1f],0x0
JNZ 0x00019855
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1d],0x0
JZ 0x00017f4d
MOV EAX,dword ptr [EBP + -0x78]
CMP dword ptr [EBP + 0xfffffe68],EAX
JNZ 0x00017f06
MOV EAX,dword ptr [EBP + -0x74]
CMP dword ptr [EBP + 0xfffffe6c],EAX
JZ 0x00017f4d
MOV ECX,dword ptr [EBP + 0xfffffddc]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
PUSH EAX
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
PUSH dword ptr [EBP + 0xfffffdc4]
PUSH EAX
LEA EAX,[EBP + 0xfffffe50]
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
CALL 0x00015b60
ADD ESP,0x10
CMP EAX,-0x1
JZ 0x000197c4
TEST EAX,EAX
JNZ 0x00017f4d
AND dword ptr [EBP + 0xfffffdc0],0xfffff1ff
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x27],0x0
JZ 0x0001950b
TEST byte ptr [EBP + -0x80],0x80
JZ 0x00019e7b
MOV ECX,dword ptr [EBP + 0xfffffe0c]
MOV EDX,dword ptr [EBP + 0xfffffdfc]
PUSH EAX
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffe04]
PUSH dword ptr [EBP + 0xfffffe14]
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x00014b00
ADD ESP,0x10
MOV ESI,EAX
TEST AL,AL
JNZ 0x0001950b
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x28]
MOV byte ptr [EBP + 0xfffffdf8],AL
MOV EDI,EAX
XOR EDI,0x1
MOV EAX,ESI
TEST AL,AL
JZ 0x00017fd3
MOV ECX,dword ptr [EBP + 0xfffffd8c]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffddc]
NOT ECX
AND ECX,dword ptr [EBP + 0xfffffd80]
CALL 0x00014ac0
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x1e],0x0
JNZ 0x000195f7
MOVZX ESI,byte ptr [EAX + 0x18]
MOV EAX,ESI
TEST AL,AL
JNZ 0x000195f7
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EDX,byte ptr [EAX + 0x2b]
TEST DL,DL
JNZ 0x0001a0d3
MOV ESI,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
AND AL,byte ptr [ESI + 0x20]
MOV ESI,EAX
JNZ 0x0001a1c7
CMP dword ptr [EBP + 0xfffffd8c],0x0
JNZ 0x0001a00a
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x000128b0
ADD ESP,0x10
TEST EAX,EAX
JS 0x0001963f
LEA ESI,[ESI]
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffdfc]
CALL 0x000128b0
ADD ESP,0x10
TEST EAX,EAX
JS 0x00018e6e
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffde4]
CALL 0x00012970
MOV EAX,EDI
ADD ESP,0x10
MOV byte ptr [EBP + 0xfffffdfc],0x0
TEST AL,AL
JNZ 0x000166da
JMP 0x00016fad
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
PUSH 0x0
MOV dword ptr [EBP + 0xfffffe14],EAX
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff4ed9]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV EDX,dword ptr [EBP + 0xfffffe14]
MOV dword ptr [ESP],EDX
PUSH ESI
PUSH EAX
PUSH EDI
JMP 0x00017594
MOV EAX,dword ptr [EBP + 0xfffffe50]
MOV EDX,dword ptr [EBP + 0xfffffe54]
XOR EAX,dword ptr [EBP + 0xfffffeb0]
XOR EDX,dword ptr [EBP + 0xfffffeb4]
OR EDX,EAX
JNZ 0x00016031
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x17]
TEST AL,AL
JNZ 0x00018440
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x4],0x2
JZ 0x00018be4
SUB ESP,0x4
LEA EAX,[EBP + 0xffffff10]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
MOV dword ptr [EBP + 0xfffffdd0],EAX
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000181e8
SUB ESP,0x4
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x3
MOV dword ptr [EBP + 0xfffffdc4],EAX
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x000181e8
MOV EAX,dword ptr [EBP + -0x38]
MOV EDX,dword ptr [EBP + -0x34]
XOR ECX,ECX
XOR EAX,dword ptr [EBP + 0xffffff68]
XOR EDX,dword ptr [EBP + 0xffffff6c]
OR EDX,EAX
JNZ 0x000181a3
MOV EDX,dword ptr [EBP + 0xffffff70]
MOV EAX,dword ptr [EBP + 0xffffff74]
XOR EDX,dword ptr [EBP + 0xffffff10]
XOR EAX,dword ptr [EBP + 0xffffff14]
OR EDX,EAX
SETZ CL
MOV EAX,dword ptr [EBP + -0x80]
MOV EDX,dword ptr [EBP + 0xfffffdc4]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x0001761e
MOV EAX,dword ptr [EBP + 0xffffff20]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x0001761e
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x15],0x0
JZ 0x0001761e
LEA ESI,[ESI]
MOV byte ptr [EBP + 0xfffffe10],0x0
JMP 0x00016048
PUSH EAX
PUSH 0x1
PUSH 0x0
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00015960
ADD ESP,0x10
JMP 0x00016544
SUB ESP,0x4
LEA EAX,[EBX + 0xffff4ed0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
POP ESI
POP EDI
PUSH EAX
PUSH 0x1
CALL 0x000125f0
MOV ECX,dword ptr [EBP + 0xfffffdd4]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffe04]
CALL 0x00014d30
ADD ESP,0x10
JMP 0x00016534
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012190
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000164ff
CALL 0x00012590
CMP dword ptr [EAX],0x2
MOV EDI,EAX
JZ 0x000164ff
JMP 0x00017548
CMP EDI,0x4000
JZ 0x00016d61
MOV EDI,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EDI + 0x18],0x0
JZ 0x000182a2
MOV ESI,dword ptr [EDI]
TEST ESI,ESI
JNZ 0x00017827
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff52b4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH ESI
XOR ESI,ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff5074]
JMP 0x00016222
PUSH dword ptr [EBP + 0xfffffe54]
PUSH dword ptr [EBP + 0xfffffe50]
PUSH dword ptr [EBP + 0xfffffeac]
PUSH dword ptr [EBP + 0xfffffea8]
CALL 0x0001a4c0
ADD ESP,0x10
JMP 0x00016fcb
PUSH dword ptr [EBP + 0xfffffe54]
PUSH dword ptr [EBP + 0xfffffe50]
PUSH dword ptr [EBP + 0xfffffeac]
PUSH dword ptr [EBP + 0xfffffea8]
CALL 0x0001a550
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdf0],EAX
JMP 0x00017737
SUB ESP,0x8
MOVZX ECX,byte ptr [EAX + 0x16]
PUSH dword ptr [EBP + 0xfffffdf8]
XOR EDI,EDI
MOV EDX,dword ptr [EBP + 0xfffffe0c]
PUSH 0x0
MOV EAX,dword ptr [EBP + 0xfffffe04]
CALL 0x00014f10
ADD ESP,0x10
TEST AL,AL
JNZ 0x000166da
JMP 0x00016fad
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe00]
PUSH -0x1
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH -0x1
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001b720
ADD ESP,0x20
TEST EAX,EAX
JZ 0x0001614a
JMP 0x000169c8
MOV EAX,dword ptr [EBP + 0xfffffec0]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x0001761e
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x00020ea0
ADD ESP,0x10
TEST AL,AL
JNZ 0x00017680
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EDX,dword ptr [EAX]
TEST EDX,EDX
JNZ 0x000181e8
TEST EDI,EDI
JZ 0x000181e8
MOVZX EAX,byte ptr [EAX + 0x18]
MOV ESI,EAX
MOV byte ptr [EBP + 0xfffffe10],AL
MOV EAX,0x1
XOR ESI,0x1
MOV ECX,ESI
TEST CL,CL
JZ 0x00017680
LEA ESI,[ESI]
NOP
MOV byte ptr [EBP + 0xfffffe10],AL
JMP 0x00016048
MOV EDI,dword ptr [EBP + 0xfffffe14]
MOVZX ESI,byte ptr [EDI + 0x18]
MOV EAX,ESI
TEST AL,AL
JNZ 0x00018768
CMP byte ptr [EDI + 0x15],0x0
JNZ 0x00018768
MOV EAX,dword ptr [EDX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x000184c2
MOV EAX,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [EAX + 0x10]
MOV dword ptr [EBP + 0xfffffdcc],EAX
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x000187a8
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX ESI,byte ptr [EAX + 0x18]
MOV EAX,ESI
TEST AL,AL
JZ 0x000184c2
MOV EAX,dword ptr [EBP + 0xfffffe60]
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x00019201
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2c],0x0
JZ 0x000184ed
MOV EAX,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [EAX + 0x10]
MOV dword ptr [EBP + 0xfffffdcc],EAX
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x00016048
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x4],0x2
JNZ 0x00017680
MOV EAX,dword ptr [EDX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x000195d2
LEA EDI,[EBP + 0xffffff70]
MOV ECX,0x18
MOV ESI,EDX
MOVSD.REP ES:EDI,ESI
MOV ESI,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [ESI + 0x10]
MOV dword ptr [EBP + 0xfffffdcc],EAX
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x000195ad
LEA EDI,[EBP + 0xffffff10]
MOV ECX,0x18
MOVSD.REP ES:EDI,ESI
MOV EAX,dword ptr [EBP + -0x38]
MOV EDX,dword ptr [EBP + -0x34]
XOR EAX,dword ptr [EBP + 0xffffff68]
XOR EDX,dword ptr [EBP + 0xffffff6c]
OR EDX,EAX
JNZ 0x00016048
MOV EAX,dword ptr [EBP + 0xffffff70]
MOV EDX,dword ptr [EBP + 0xffffff74]
XOR EAX,dword ptr [EBP + 0xffffff10]
XOR EDX,dword ptr [EBP + 0xffffff14]
OR EDX,EAX
JNZ 0x00016048
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x17],0x0
JZ 0x00017680
MOV EAX,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [EAX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
SETNZ byte ptr [EBP + 0xfffffe10]
JMP 0x00016048
SUB ESP,0x4
PUSH dword ptr [EBX + 0x764]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBX + 0x768]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff5450]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [ESP],EDI
PUSH ESI
MOV ESI,0x1
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EAX,ESI
XOR EDI,EDI
MOV byte ptr [EBP + 0xfffffdfc],0x0
XOR EDX,EDX
MOV byte ptr [EBP + 0xfffffde0],AL
JMP 0x00016722
SUB ESP,0x8
LEA EAX,[EBP + -0x2c]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00022580
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001687d
JMP 0x00016816
MOV EAX,dword ptr [EDI]
MOV EDX,dword ptr [EDI + 0x4]
XOR EAX,dword ptr [EBP + 0xfffffe50]
XOR EDX,dword ptr [EBP + 0xfffffe54]
OR EDX,EAX
JNZ 0x000173e0
JMP 0x00017244
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff4ef6]
JMP 0x00016f90
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff5220]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EDI,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EDI + 0x18],0x0
JNZ 0x00017827
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001d030
ADD ESP,0x10
CMP byte ptr [EAX],0x2e
MOV EDI,EAX
JZ 0x00018d7e
MOV EAX,dword ptr [EBP + 0xfffffec0]
AND EAX,0xf000
CMP EAX,0x4000
JNZ 0x0001785b
JMP 0x00016da2
MOV EAX,dword ptr [EBP + 0xfffffe60]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x00018924
TEST ESI,ESI
JZ 0x00016da2
JMP 0x0001783f
MOV EDI,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [EDI + 0x10]
MOV dword ptr [EBP + 0xfffffdcc],EAX
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x00016048
TEST CL,CL
JZ 0x00018795
CMP dword ptr [EDI + 0x14],0x1
JA 0x00018ff7
MOV EAX,dword ptr [EDX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JZ 0x000184a6
MOV EDI,dword ptr [EBP + 0xfffffdd0]
MOV EAX,dword ptr [EDX + 0x58]
MOV ECX,dword ptr [EDX + 0x5c]
XOR EAX,dword ptr [EDI + 0x58]
XOR ECX,dword ptr [EDI + 0x5c]
OR ECX,EAX
JNZ 0x00016048
MOV EAX,dword ptr [EDX]
MOV ECX,dword ptr [EDX + 0x4]
XOR EAX,dword ptr [EDI]
XOR ECX,dword ptr [EDI + 0x4]
OR ECX,EAX
JNZ 0x00016048
MOV EDI,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EDI + 0x17]
TEST AL,AL
JNZ 0x00018440
MOVZX ESI,byte ptr [EDI + 0x18]
JMP 0x000184a6
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x15],0x0
JNZ 0x00018813
CMP byte ptr [EAX + 0x22],0x0
JZ 0x00018c2a
CMP dword ptr [EBP + 0xfffffec4],0x1
JBE 0x00018c2a
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012250
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00018836
CALL 0x00012590
CMP dword ptr [EAX],0x2
JNZ 0x00019382
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x2e]
MOV byte ptr [EBP + 0xfffffe10],AL
TEST AL,AL
JNZ 0x00018faf
CMP byte ptr [EBP + 0xfffffe08],0x0
JNZ 0x00018f72
MOV EDI,0x11
MOV byte ptr [EBP + 0xfffffe10],0x1
MOV dword ptr [EBP + 0xfffffdd4],0x0
JMP 0x00016356
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x21],0x0
JNZ 0x00018e42
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x25]
TEST AL,AL
JZ 0x000188c4
MOV EDI,dword ptr [EBP + 0xfffffe14]
PUSH EDI
PUSH 0x0
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00015960
ADD ESP,0x10
TEST AL,AL
JNZ 0x000188c4
CMP byte ptr [EDI + 0x26],0x0
JNZ 0x00016fad
MOV byte ptr [EBP + 0xfffffdb8],0x0
MOV dword ptr [EBP + 0xfffffdc8],0x0
JMP 0x00017228
SUB ESP,0x4
LEA EAX,[EBX + 0xffff4e7c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
ADD ESP,0x10
JMP 0x00016c67
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffe14]
LEA ECX,[EBP + 0xfffffec0]
CALL 0x00014de0
TEST AL,AL
JNZ 0x00016cbd
JMP 0x00016570
MOV EAX,dword ptr [EBP + 0xfffffec0]
AND EAX,0xf000
CMP EAX,0x4000
JZ 0x00018756
TEST ESI,ESI
JNZ 0x0001783f
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
PUSH 0x0
CALL 0x00020700
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x3
MOV EDI,EAX
PUSH 0x0
CALL 0x00020700
ADD ESP,0xc
MOV ESI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff52e8]
JMP 0x000176b3
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
PUSH 0x0
MOV dword ptr [EBP + 0xfffffe10],EAX
CALL 0x000203c0
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff54bc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
MOV EDX,dword ptr [EBP + 0xfffffe10]
MOV dword ptr [ESP],EDX
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff5254]
JMP 0x000176b3
CMP dword ptr [EBP + 0xfffffdcc],0xa000
JNZ 0x00018e20
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe7c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001b850
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JZ 0x000194c1
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [EAX + 0x16]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH -0x64
PUSH ESI
CALL 0x0001ade0
ADD ESP,0x10
TEST EAX,EAX
JS 0x00019310
SUB ESP,0xc
PUSH ESI
CALL 0x00012970
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x25],0x0
JNZ 0x000193d7
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV byte ptr [EBP + 0xfffffdfc],0x1
MOVZX EDI,byte ptr [EAX + 0x1d]
MOV EAX,EDI
TEST AL,AL
JZ 0x000166da
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe6c]
PUSH dword ptr [EBP + 0xfffffe68]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x000126e0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001959e
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe14]
CALL 0x00015b20
ADD ESP,0x10
MOV byte ptr [EBP + 0xfffffdfc],AL
TEST AL,AL
JZ 0x00019563
XOR EDI,EDI
JMP 0x000166da
SUB ESP,0x4
PUSH dword ptr [EBX + 0x764]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBX + 0x768]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff53b8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [ESP],EDI
PUSH ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff54e4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
XOR EDI,EDI
CALL 0x00012390
CALL 0x00012590
MOV EDI,0x11
MOV byte ptr [EBP + 0xfffffe10],0x1
CMP dword ptr [EAX],0x2
MOV ESI,EAX
JZ 0x00016259
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4eae]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH EAX
PUSH dword ptr [ESI]
XOR ESI,ESI
PUSH 0x0
CALL 0x00012390
MOV ECX,0x1
MOV EDI,0x1
JMP 0x000175fc
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffeb4]
PUSH dword ptr [EBP + 0xfffffeb0]
PUSH dword ptr [EBP + 0xffffff0c]
PUSH dword ptr [EBP + 0xffffff08]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001a5c0
MOV EAX,dword ptr [EBP + 0xfffffde8]
ADD ESP,0x20
MOV byte ptr [EAX],0x1
JMP 0x000171d9
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x4],0x2
JNZ 0x00016da2
MOV EAX,dword ptr [EBP + 0xfffffe60]
AND EAX,0xf000
CMP EAX,0x8000
JNZ 0x00018813
JMP 0x00016da2
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe14]
MOV ECX,dword ptr [EBP + 0xfffffe0c]
MOV EDX,0xffffffff
MOV EAX,dword ptr [EBP + 0xfffffe04]
PUSH -0x1
CALL 0x00014b00
ADD ESP,0x10
TEST AL,AL
JNZ 0x00016900
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x28],0x0
JZ 0x00016900
JMP 0x00016148
MOV EAX,0x1
XOR ECX,ECX
CMP byte ptr [EDI + 0x1],0x2e
SETZ CL
MOVZX ECX,byte ptr [EDI + ECX*0x1 + 0x1]
TEST CL,CL
JZ 0x00016d83
CMP CL,0x2f
JZ 0x00016d83
TEST AL,AL
JZ 0x0001871c
JMP 0x0001785b
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff4e6d]
JMP 0x00016f90
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff4f38]
JMP 0x00016f90
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffe04]
XOR ECX,ECX
CALL 0x00014d30
JMP 0x00017228
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffdf0]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff5420]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [ESP],EDI
PUSH ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
XOR EAX,EAX
JMP 0x00018ca5
MOV dword ptr [EBP + 0xffffff70],0x0
MOV EAX,dword ptr [EBP + 0xfffffdc8]
MOV dword ptr [EBP + 0xffffff74],0x0
NOT EAX
AND EAX,dword ptr [EBP + 0xfffffe00]
MOV ESI,EAX
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x1
CALL 0x00012880
MOV ECX,EDI
ADD ESP,0x10
MOV byte ptr [EBP + 0xfffffdfc],CL
TEST EAX,EAX
JZ 0x000166da
MOV EAX,ESI
SUB ESP,0x8
AND AH,0xef
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x000128d0
MOV ECX,EDI
ADD ESP,0x10
MOV byte ptr [EBP + 0xfffffdfc],CL
TEST EAX,EAX
JZ 0x000166da
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff500a]
JMP 0x00016f90
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff505b]
JMP 0x00016e8b
MOVZX EAX,byte ptr [EAX + 0x25]
JMP 0x0001889e
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x00020ea0
ADD ESP,0x10
XOR EAX,0x1
MOV ESI,EAX
XOR EAX,EAX
JMP 0x00018431
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4ff7]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
SUB ESP,0x4
PUSH dword ptr [EAX + 0x10]
PUSH -0x1
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001b7d0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001614a
JMP 0x00016148
SUB ESP,0x8
PUSH dword ptr [EBX + 0x768]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff53e8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffecc]
CMP dword ptr [EBP + 0xfffffe6c],EAX
JNZ 0x000168a4
JMP 0x000168f0
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4f53]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
JMP 0x00018b73
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EDI,0x11
MOV EAX,dword ptr [EAX + 0x3c]
MOV dword ptr [EBP + 0xfffffdd4],EAX
TEST EAX,EAX
MOVZX EAX,byte ptr [EBP + 0xfffffe08]
MOV byte ptr [EBP + 0xfffffe10],AL
JZ 0x00016356
MOV dword ptr [EBP + 0xfffffdd4],0x0
MOV EDI,0x11
JMP 0x00016277
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
MOV EDI,0x11
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff4dd8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
ADD ESP,0xc
PUSH ESI
PUSH EAX
PUSH 0x1
CALL 0x000125f0
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdd4],0x0
JMP 0x00016259
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
MOV dword ptr [EBP + 0xfffffdcc],EDX
CALL 0x00020ea0
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffdcc]
TEST AL,AL
JZ 0x000194f1
MOV EAX,dword ptr [EDX + 0x10]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x0001847d
JMP 0x0001849c
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV ESI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff5288]
JMP 0x000176b3
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff304e]
JMP 0x00016f90
MOV EAX,dword ptr [EBP + 0xfffffdc8]
MOV dword ptr [EBP + 0xfffffd8c],EAX
MOV EAX,dword ptr [EBP + 0xfffffd8c]
SUB ESP,0x4
NOT EAX
AND EAX,dword ptr [EBP + 0xfffffd80]
PUSH EAX
PUSH 0xc1
PUSH dword ptr [EBP + 0xfffffe0c]
MOV dword ptr [EBP + 0xfffffde8],EAX
CALL 0x0001d190
MOV EDI,EAX
MOV dword ptr [EBP + 0xfffffddc],EAX
CALL 0x00012590
ADD ESP,0x10
MOV ESI,dword ptr [EAX]
MOV dword ptr [EBP + 0xfffffde4],EAX
MOV EAX,EDI
SHR EAX,0x1f
CMP ESI,0x11
SETZ DL
AND DL,AL
MOV byte ptr [EBP + 0xfffffdd8],DL
JZ 0x00019445
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV ESI,0x11
MOVZX EAX,byte ptr [EAX + 0x18]
MOV byte ptr [EBP + 0xfffffe10],AL
TEST AL,AL
JZ 0x000193e1
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4f63]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH EAX
PUSH ESI
JMP 0x00018b73
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4f27]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
XOR ESI,ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffe00]
MOV EDX,0x1ff
AND EAX,0x7000
CMP EAX,0x4000
MOV EAX,0x1b6
CMOVZ EAX,EDX
MOV EDI,EAX
CALL 0x00015d90
SUB ESP,0x4
NOT EAX
AND EAX,EDI
PUSH EAX
JMP 0x00018ec1
CALL 0x00015d90
NOT EAX
AND dword ptr [EBP + 0xfffffdc8],EAX
JZ 0x0001694e
CMP byte ptr [EBP + 0xfffffde0],0x1
JZ 0x0001695b
CMP byte ptr [EBP + 0xfffffe10],0x0
JNZ 0x00019962
MOV EAX,dword ptr [EBP + 0xfffffec0]
MOV dword ptr [EBP + 0xfffffd94],EAX
NOT EAX
TEST dword ptr [EBP + 0xfffffdc8],EAX
JNZ 0x0001695b
JMP 0x0001614a
MOV EAX,dword ptr [EBP + 0xfffffdd0]
CMP dword ptr [EAX + 0x14],0x1
JBE 0x000184c2
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe04]
MOV dword ptr [EBP + 0xfffffdcc],EDX
CALL 0x00012770
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffdcc]
TEST EAX,EAX
MOV EDI,EAX
JZ 0x000184c2
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH EDI
CALL 0x00020ea0
MOV dword ptr [ESP],EDI
XOR EAX,0x1
MOV ESI,EAX
CALL 0x00012970
ADD ESP,0x10
XOR EAX,EAX
JMP 0x00018431
MOV EAX,dword ptr [EBP + 0xfffffddc]
TEST EAX,EAX
JNS 0x00019515
CALL 0x00012590
MOV ESI,EAX
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x16],0x0
JZ 0x00019934
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00012250
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0001a0f5
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2e],0x0
JNZ 0x0001a09b
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EDI,dword ptr [EBP + 0xfffffdc8]
MOVZX EAX,byte ptr [EAX + 0x21]
MOV dword ptr [EBP + 0xfffffd8c],EDI
MOV byte ptr [EBP + 0xfffffe10],AL
TEST AL,AL
JZ 0x000190a0
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe14]
PUSH 0x1
PUSH dword ptr [EBP + 0xfffffd80]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x000156e0
ADD ESP,0x20
MOV EDI,EAX
TEST AL,AL
JNZ 0x00019094
MOV dword ptr [EBP + 0xfffffde4],0x0
JMP 0x00018048
CALL 0x00012590
MOV EAX,dword ptr [EAX]
MOV dword ptr [EBP + 0xfffffdfc],EAX
TEST EAX,EAX
JZ 0x00018a69
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x2d],0x1
JNZ 0x0001933e
CMP byte ptr [EBP + 0xfffffe10],0x0
JZ 0x00019dd9
SUB ESP,0xc
PUSH ESI
CALL 0x00012970
POP ECX
POP ESI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff55c8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH EAX
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH 0x0
CALL 0x00012390
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV dword ptr [EBP + 0xfffffe14],EAX
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4ebf]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV EDX,dword ptr [EBP + 0xfffffe14]
PUSH EDI
PUSH EAX
PUSH dword ptr [EDX]
PUSH 0x0
CALL 0x00012390
MOV byte ptr [EBP + 0xfffffddc],0x0
MOV ESI,0x1
JMP 0x000173c0
CALL 0x00015060
JMP 0x00018a85
LEA EAX,[EBP + 0xffffff70]
PUSH EDX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00019445
MOV EAX,dword ptr [EBP + -0x80]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x00019445
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOVZX EDI,byte ptr [EAX + 0x30]
MOV EAX,EDI
TEST AL,AL
JZ 0x0001a208
PUSH EAX
PUSH dword ptr [EBP + 0xfffffde8]
PUSH 0x41
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001d190
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffddc],EAX
MOV EAX,dword ptr [EBP + 0xfffffde4]
MOV ESI,dword ptr [EAX]
MOV EAX,dword ptr [EBP + 0xfffffddc]
SHR EAX,0x1f
CMP ESI,0x15
SETZ DL
AND DL,AL
MOV byte ptr [EBP + 0xfffffe10],DL
JZ 0x0001998f
MOV EDI,dword ptr [EBP + 0xfffffe0c]
MOV ESI,0x15
CMP byte ptr [EDI],0x0
JZ 0x00019116
XOR EAX,EAX
OR ECX,0xffffffff
MOV ESI,EDI
SCASB.REPNE ES:EDI
MOV EAX,ECX
NOT EAX
CMP byte ptr [ESI + EAX*0x1 + -0x2],0x2f
SETNZ AL
MOVZX EAX,AL
MOV ESI,EAX
ADD ESI,0x14
JMP 0x00019116
MOV EAX,dword ptr [EBP + 0xffffff10]
MOV EDI,dword ptr [EBP + 0xffffff74]
CMP dword ptr [EBP + 0xffffff14],EDI
JNZ 0x00017b2e
CMP EAX,dword ptr [EBP + 0xffffff70]
JNZ 0x00017b2e
JMP 0x000166a3
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff503e]
JMP 0x00016f90
MOV dword ptr [EBP + 0xfffffde4],0x0
JMP 0x00017ed4
MOV EDI,dword ptr [EBP + 0xfffffe14]
MOVZX ECX,byte ptr [EDI + 0x18]
MOV ESI,ECX
MOV byte ptr [EBP + 0xfffffe10],CL
XOR ESI,0x1
JMP 0x00018431
MOV EDI,0x1
JMP 0x00017fd3
MOV ESI,dword ptr [EBP + 0xfffffe14]
MOVZX EAX,byte ptr [ESI + 0x25]
PUSH ESI
PUSH 0x0
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x00015960
ADD ESP,0x10
MOV EDI,EAX
TEST AL,AL
JNZ 0x00017c77
MOVZX EAX,byte ptr [ESI + 0x26]
MOV byte ptr [EBP + 0xfffffe10],AL
TEST AL,AL
JZ 0x00017c77
MOV byte ptr [EBP + 0xfffffe10],0x0
MOV dword ptr [EBP + 0xfffffde4],0x0
JMP 0x00018028
LEA EAX,[EBX + 0xffff37dc]
PUSH ESI
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV EAX,EDI
XOR EDI,EDI
MOV byte ptr [EBP + 0xfffffdfc],AL
JMP 0x000166da
LEA EAX,[EBP + 0xffffff10]
PUSH EDI
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
CALL 0x00012860
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001854b
JMP 0x00016048
PUSH EAX
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x3
CALL 0x00012860
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001851f
JMP 0x00016048
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffdc0]
PUSH dword ptr [EBP + 0xfffffddc]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH dword ptr [EBP + 0xfffffe04]
CALL 0x0001b720
ADD ESP,0x20
TEST EAX,EAX
JZ 0x00018028
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x24],0x0
MOV EAX,0x0
CMOVNZ EDI,EAX
JMP 0x00018028
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4ff7]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
XOR EDI,EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV byte ptr [EBP + 0xfffffe45],0x1
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe48]
MOV EBX,dword ptr [EBP + 0xfffffd84]
CALL 0x00012970
ADD ESP,0x10
CMP byte ptr [EBP + 0xfffffe45],0x0
MOV dword ptr [EBP + 0xfffffe48],0x0
MOV dword ptr [EBP + 0xfffffe40],0x0
JZ 0x00019a7f
MOV EBX,dword ptr [EBP + 0xfffffd84]
MOV EAX,dword ptr [EBP + 0xfffffdb0]
MOV EDI,dword ptr [EBP + 0xfffffde8]
MOV ESI,0x1
MOV EDX,dword ptr [EBP + 0xfffffdb4]
CMP EAX,EDI
MOV EAX,EDX
SBB EAX,dword ptr [EBP + 0xfffffdec]
JL 0x000196f6
XOR ESI,ESI
CMP byte ptr [EBP + 0xfffffdf8],0x0
JZ 0x00017ed4
CMP dword ptr [EBP + 0xfffffd90],0x1
JZ 0x0001a256
PUSH ECX
PUSH dword ptr [EBP + 0xfffffdec]
PUSH dword ptr [EBP + 0xfffffde8]
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x00012610
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00019fca
CMP dword ptr [EBP + 0xfffffd90],0x3
JNZ 0x00017ed4
MOV EAX,ESI
TEST AL,AL
JZ 0x00017ed4
MOV ESI,dword ptr [EBP + 0xfffffdb0]
MOV EAX,dword ptr [EBP + 0xfffffde8]
PUSH EDX
MOV EDI,dword ptr [EBP + 0xfffffdb4]
PUSH EDX
MOV EDX,dword ptr [EBP + 0xfffffdec]
SUB EAX,ESI
SBB EDX,EDI
PUSH EDX
PUSH EAX
PUSH EDI
PUSH ESI
PUSH 0x3
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x00012660
ADD ESP,0x20
TEST EAX,EAX
JNS 0x00017ed4
CALL 0x00012590
MOV ESI,EAX
MOV EAX,dword ptr [EAX]
CMP EAX,0x26
JZ 0x00017ed4
CMP EAX,0x5f
JZ 0x00017ed4
PUSH EDI
PUSH EDI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4e05]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH EAX
PUSH dword ptr [ESI]
PUSH 0x0
CALL 0x00012390
XOR EDI,EDI
JMP 0x00018028
MOV EAX,dword ptr [EBP + 0xfffffe50]
MOV EDI,dword ptr [EBP + 0xffffff74]
CMP dword ptr [EBP + 0xfffffe54],EDI
JNZ 0x00017990
CMP EAX,dword ptr [EBP + 0xffffff70]
JNZ 0x00017990
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x18],0x0
JZ 0x00019843
SUB ESP,0x4
LEA EAX,[EBX + 0xffff531c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
ADD ESP,0x10
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe04]
MOV ESI,EAX
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
MOV dword ptr [ESP],EDI
PUSH EAX
PUSH ESI
JMP 0x000176c0
SUB ESP,0x4
LEA EAX,[EBX + 0xffff5350]
PUSH 0x5
JMP 0x00019806
CALL 0x0002bcb0
MOV EAX,dword ptr [EBP + 0xfffffe90]
MOV dword ptr [EBP + -0x2c],EAX
MOV EAX,dword ptr [EBP + 0xfffffe94]
MOV dword ptr [EBP + -0x28],EAX
MOV EAX,dword ptr [EBP + 0xfffffe98]
MOV dword ptr [EBP + -0x24],EAX
MOV EAX,dword ptr [EBP + 0xfffffe9c]
MOV dword ptr [EBP + -0x20],EAX
PUSH EAX
LEA EAX,[EBP + -0x2c]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x000220c0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00017ee4
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4fc1]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4f53]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
XOR EDI,EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV ESI,dword ptr [ESI]
CMP ESI,0x2
JNZ 0x00019956
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP byte ptr [EAX + 0x18],0x0
JNZ 0x00019956
MOV dword ptr [EBP + 0xfffffd8c],0x0
JMP 0x000190a0
MOV byte ptr [EBP + 0xfffffe10],0x0
JMP 0x00019116
PUSH EAX
LEA EAX,[EBP + 0xfffffeb0]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
CALL 0x00012890
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000191e2
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
JMP 0x0001620e
CMP dword ptr [EBP + 0xfffffddc],0x0
MOV byte ptr [EBP + 0xfffffe10],0x1
JS 0x00019116
JMP 0x00017c81
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0xc]
CMP EAX,0x3
JZ 0x00019f51
CMP EAX,0x2
JNZ 0x00017d9d
TEST EDI,0x1
JZ 0x00017d9d
MOV EAX,dword ptr [EBP + 0xfffffdac]
SUB ESP,0xc
ADD EAX,ESI
PUSH EAX
CALL 0x00022ed0
LEA ECX,[ESI + -0x1]
XOR EDX,EDX
ADD ESP,0x10
ADD ECX,EAX
MOV dword ptr [EBP + 0xfffffde4],EAX
MOV EAX,ECX
DIV ESI
SUB ECX,EDX
MOV dword ptr [EBP + 0xfffffd88],ECX
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EAX,dword ptr [EAX + 0xc]
MOV dword ptr [EBP + 0xfffffd90],EAX
MOVZX EAX,byte ptr [EBP + 0xfffffdf8]
MOV byte ptr [EBP + 0xfffffd7f],AL
MOV EAX,dword ptr [EBP + 0xffffff3c]
MOV EDX,dword ptr [EBP + 0xffffff40]
XOR ESI,ESI
XOR EDI,EDI
MOV dword ptr [EBP + 0xfffffde8],EAX
PUSH EAX
PUSH EAX
LEA EAX,[EBP + 0xfffffe30]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffdfc]
MOV dword ptr [EBP + 0xfffffdec],EDX
MOV dword ptr [EBP + 0xfffffdd8],EAX
CALL 0x0001a6d0
MOV dword ptr [EBP + 0xfffffd84],EBX
ADD ESP,0x10
MOV dword ptr [EBP + 0xfffffdb0],0x0
MOV dword ptr [EBP + 0xfffffdb4],0x0
MOV dword ptr [EBP + 0xfffffdb8],0x0
MOV dword ptr [EBP + 0xfffffdbc],0x0
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffdd8]
MOV EBX,dword ptr [EBP + 0xfffffd84]
CALL 0x0001a710
ADD ESP,0x10
TEST AL,AL
JZ 0x0001a133
CMP dword ptr [EBP + 0xfffffe40],0x0
JZ 0x00019686
MOV EAX,dword ptr [EBP + 0xfffffdb8]
MOV EDX,dword ptr [EBP + 0xfffffdbc]
MOV dword ptr [EBP + 0xfffffdd0],0x0
MOV dword ptr [EBP + 0xfffffd98],ESI
MOV dword ptr [EBP + 0xfffffda0],EAX
MOV dword ptr [EBP + 0xfffffda4],EDX
MOV dword ptr [EBP + 0xfffffd9c],EDI
JMP 0x00019be9
CMP dword ptr [EBP + 0xfffffd90],0x3
MOV EAX,0x0
CMOVZ EAX,dword ptr [EBP + 0xfffffda8]
SUB ESP,0xc
LEA EDX,[EBP + 0xfffffe27]
MOV ECX,dword ptr [EBP + 0xfffffd88]
PUSH EDX
LEA EDX,[EBP + 0xfffffe28]
PUSH EDX
MOV EDX,dword ptr [EBP + 0xfffffddc]
PUSH dword ptr [EBP + 0xfffffdbc]
PUSH dword ptr [EBP + 0xfffffdb8]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x1
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffdfc]
PUSH dword ptr [EBP + 0xfffffdac]
CALL 0x000151c0
ADD ESP,0x30
TEST AL,AL
JZ 0x00019cf7
MOV ECX,dword ptr [EBP + 0xfffffe28]
MOV EBX,dword ptr [EBP + 0xfffffe2c]
MOV EAX,ESI
MOV EDX,EDI
ADD EAX,dword ptr [EBP + 0xfffffe28]
ADC EDX,dword ptr [EBP + 0xfffffe2c]
MOV dword ptr [EBP + 0xfffffdb0],EAX
OR EBX,ECX
MOVZX EAX,byte ptr [EBP + 0xfffffdf8]
MOVZX ECX,byte ptr [EBP + 0xfffffe27]
MOV dword ptr [EBP + 0xfffffdb4],EDX
MOV EDX,dword ptr [EBP + 0xfffffdec]
MOV EBX,dword ptr [EBP + 0xfffffdb4]
CMOVNZ EAX,ECX
MOV ECX,dword ptr [EBP + 0xfffffdb0]
XOR EBX,EDX
MOV byte ptr [EBP + 0xfffffdf8],AL
MOV EAX,dword ptr [EBP + 0xfffffde8]
XOR ECX,EAX
OR EBX,ECX
JZ 0x0001967f
MOV EAX,dword ptr [EBP + 0xfffffdb8]
MOV EDX,dword ptr [EBP + 0xfffffdbc]
MOV dword ptr [EBP + 0xfffffd98],ESI
ADD dword ptr [EBP + 0xfffffdd0],0x1
MOV EBX,dword ptr [EBP + 0xfffffdd0]
MOV dword ptr [EBP + 0xfffffd9c],EDI
MOV dword ptr [EBP + 0xfffffda0],EAX
MOV dword ptr [EBP + 0xfffffda4],EDX
CMP EBX,dword ptr [EBP + 0xfffffe40]
JNC 0x00019686
MOV EAX,dword ptr [EBP + 0xfffffdd0]
MOV EDX,dword ptr [EBP + 0xfffffe48]
MOV ECX,dword ptr [EBP + 0xfffffde8]
MOV EBX,dword ptr [EBP + 0xfffffdec]
LEA EAX,[EAX + EAX*0x4]
LEA EAX,[EDX + EAX*0x4]
MOV EDX,dword ptr [EAX + 0xc]
MOV ESI,dword ptr [EAX]
MOV EDI,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [EAX + 0x8]
MOV dword ptr [EBP + 0xfffffdbc],EDX
MOV dword ptr [EBP + 0xfffffdb8],EAX
ADD EAX,ESI
ADC EDX,EDI
CMP ECX,EAX
SBB EBX,EDX
JGE 0x00019c5c
MOV EAX,dword ptr [EBP + 0xfffffde8]
MOV EDX,dword ptr [EBP + 0xfffffdec]
CMP EAX,ESI
MOV EBX,EDX
SBB EBX,EDI
JGE 0x00019c40
MOV ESI,EAX
MOV EDI,EDX
MOV EAX,dword ptr [EBP + 0xfffffde8]
MOV EDX,dword ptr [EBP + 0xfffffdec]
SUB EAX,ESI
SBB EDX,EDI
MOV dword ptr [EBP + 0xfffffdb8],EAX
MOV dword ptr [EBP + 0xfffffdbc],EDX
MOV EAX,ESI
MOV EDX,EDI
SUB EAX,dword ptr [EBP + 0xfffffd98]
SBB EDX,dword ptr [EBP + 0xfffffd9c]
SUB EAX,dword ptr [EBP + 0xfffffda0]
SBB EDX,dword ptr [EBP + 0xfffffda4]
MOV byte ptr [EBP + 0xfffffdf8],0x0
MOV dword ptr [EBP + 0xfffffdb4],EDX
OR EDX,EAX
MOV dword ptr [EBP + 0xfffffdb0],EAX
JZ 0x00019ae0
PUSH 0x0
MOV EBX,dword ptr [EBP + 0xfffffd84]
PUSH EDI
PUSH ESI
PUSH dword ptr [EBP + 0xfffffdfc]
CALL 0x00012790
ADD ESP,0x10
TEST EDX,EDX
JS 0x00019f0d
MOV EAX,dword ptr [EBP + 0xfffffd90]
CMP EAX,0x1
JZ 0x00019d15
XOR ECX,ECX
CMP EAX,0x3
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffddc]
SETZ CL
SUB ESP,0x8
PUSH dword ptr [EBP + 0xfffffdb4]
PUSH dword ptr [EBP + 0xfffffdb0]
CALL 0x000150b0
ADD ESP,0x10
MOV byte ptr [EBP + 0xfffffdf8],AL
TEST AL,AL
JNZ 0x00019ae0
MOV EBX,dword ptr [EBP + 0xfffffd84]
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe48]
XOR EDI,EDI
CALL 0x00012970
ADD ESP,0x10
JMP 0x00018028
MOV EDX,dword ptr [EBP + 0xfffffdb0]
MOV ECX,dword ptr [EBP + 0xfffffdb4]
MOV EAX,dword ptr [EBP + 0xfffffddc]
CALL 0x000149e0
TEST AL,AL
JZ 0x0001a17d
XOR EAX,EAX
JMP 0x00019af3
PUSH EAX
PUSH dword ptr [EBP + 0xfffffdfc]
PUSH 0x40049409
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x000122c0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000194e2
MOV EAX,dword ptr [EBP + 0xfffffe14]
CMP dword ptr [EAX + 0x38],0x2
JNZ 0x00017cc8
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
PUSH 0x1
CALL 0x000203c0
ADD ESP,0xc
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
MOV EDI,EAX
PUSH 0x0
CALL 0x000203c0
ADD ESP,0xc
MOV dword ptr [EBP + 0xfffffdf8],EAX
LEA EAX,[EBX + 0xffff4f81]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
MOV EDX,dword ptr [EBP + 0xfffffdf8]
MOV dword ptr [ESP],EDI
XOR EDI,EDI
PUSH EDX
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffec0]
AND EAX,0xf000
CMP EAX,0xa000
JNZ 0x0001933e
MOVZX EAX,byte ptr [EBP + 0xfffffe10]
OR ECX,0xffffffff
MOV EDI,ESI
MOV EDX,dword ptr [EBP + 0xfffffedc]
SCASB.REPNE ES:EDI
CMP dword ptr [EBP + 0xfffffee0],0x0
NOT ECX
LEA EAX,[ECX + -0x1]
JNZ 0x0001933e
CMP EDX,EAX
JNZ 0x0001933e
PUSH EAX
PUSH EAX
PUSH EDX
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001b850
ADD ESP,0x10
MOV EDI,EAX
TEST EAX,EAX
JZ 0x0001933e
PUSH EAX
PUSH EAX
PUSH ESI
PUSH EDI
CALL 0x00012090
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0001a122
SUB ESP,0xc
PUSH EDI
CALL 0x00012970
MOV dword ptr [ESP],ESI
CALL 0x00012970
ADD ESP,0x10
JMP 0x00018a75
MOV byte ptr [EBP + 0xfffffd7f],0x0
MOV dword ptr [EBP + 0xfffffd90],0x1
JMP 0x00019a18
CALL 0x00012240
TEST EAX,EAX
JZ 0x00017f67
MOV EDI,dword ptr [EBP + 0xfffffddc]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV ECX,0x180
MOV EAX,EDI
CALL 0x00014ac0
MOV ECX,dword ptr [EBP + 0xfffffe0c]
MOV EDX,dword ptr [EBP + 0xfffffdfc]
TEST EAX,EAX
SETZ AL
MOV ESI,EAX
PUSH EAX
PUSH EAX
MOV EAX,dword ptr [EBP + 0xfffffe04]
PUSH dword ptr [EBP + 0xfffffe14]
PUSH EDI
CALL 0x00014b00
ADD ESP,0x10
MOV EDI,EAX
TEST AL,AL
JNZ 0x00017fae
JMP 0x00017f99
MOV dword ptr [EBP + 0xfffffdac],ECX
JMP 0x00017e1d
MOV EDX,dword ptr [EBP + 0xffffff40]
MOV EAX,dword ptr [EBP + 0xffffff3c]
CMP EAX,dword ptr [EBP + 0xfffffdac]
SBB EDX,0x0
JGE 0x00017de9
ADD EAX,0x1
MOV dword ptr [EBP + 0xfffffdac],EAX
JMP 0x00017de9
PUSH EDI
MOV EBX,dword ptr [EBP + 0xfffffd84]
PUSH EDI
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
PUSH 0x5
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4df5]
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffdac]
SUB ESP,0xc
ADD EAX,ESI
PUSH EAX
CALL 0x00022ed0
LEA ECX,[ESI + -0x1]
XOR EDX,EDX
ADD ESP,0x10
ADD ECX,EAX
MOV dword ptr [EBP + 0xfffffde4],EAX
MOV EAX,ECX
DIV ESI
SUB ECX,EDX
MOV dword ptr [EBP + 0xfffffd88],ECX
TEST EDI,EDI
JNZ 0x000199fc
MOV EAX,dword ptr [EBP + 0xfffffe14]
LEA EDI,[EBP + 0xfffffe30]
MOV dword ptr [EBP + 0xfffffdd8],EDI
CMP dword ptr [EAX + 0xc],0x3
SETZ AL
MOVZX EAX,AL
JMP 0x00017e78
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe34]
PUSH dword ptr [EBP + 0xfffffe30]
PUSH dword ptr [EBP + 0xfffffddc]
CALL 0x00012610
ADD ESP,0x10
TEST EAX,EAX
JNS 0x00017ed4
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
PUSH 0x5
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4fad]
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV ESI,EAX
CALL 0x00012590
PUSH EDI
XOR EDI,EDI
PUSH ESI
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
CALL 0x00015d90
NOT EAX
TEST dword ptr [EBP + 0xfffffd8c],EAX
JZ 0x00018028
MOV ECX,dword ptr [EBP + 0xfffffd80]
MOV EDX,dword ptr [EBP + 0xfffffe0c]
MOV EAX,dword ptr [EBP + 0xfffffddc]
CALL 0x00014ac0
TEST EAX,EAX
JZ 0x00018028
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV dword ptr [EBP + 0xfffffde8],EAX
LEA EAX,[EBX + 0xffff4fd9]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
MOV dword ptr [EBP + 0xfffffdf8],EAX
CALL 0x00012590
MOV ECX,dword ptr [EBP + 0xfffffde8]
MOV EDX,dword ptr [EBP + 0xfffffdf8]
PUSH ECX
PUSH EDX
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00012390
PUSH ECX
PUSH ECX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff4dd8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
ADD ESP,0xc
PUSH ESI
PUSH EAX
PUSH 0x1
CALL 0x000125f0
ADD ESP,0x10
JMP 0x000192ab
PUSH ECX
PUSH dword ptr [EAX + 0x10]
PUSH dword ptr [EBP + 0xfffffddc]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001b7d0
ADD ESP,0x10
TEST EAX,EAX
CMOVNZ EDI,ESI
JMP 0x00018028
PUSH EDI
PUSH EDI
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xffff4ebf]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH EDI
PUSH EAX
PUSH dword ptr [ESI]
JMP 0x00018b73
SUB ESP,0xc
PUSH EDI
CALL 0x00012970
ADD ESP,0x10
JMP 0x0001933e
CMP byte ptr [EBP + 0xfffffe45],0x0
MOV EBX,dword ptr [EBP + 0xfffffd84]
JNZ 0x000196c4
CMP byte ptr [EBP + 0xfffffe44],0x0
JZ 0x0001a1a5
MOV EAX,dword ptr [EBP + 0xfffffe14]
MOV EDX,0x0
CMP dword ptr [EAX + 0xc],0x3
SETZ AL
CMP byte ptr [EBP + 0xfffffd7f],0x0
CMOVNZ EDX,dword ptr [EBP + 0xfffffda8]
MOVZX EAX,AL
MOV dword ptr [EBP + 0xfffffda8],EDX
JMP 0x00017e78
PUSH ESI
MOV EBX,dword ptr [EBP + 0xfffffd84]
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x3
PUSH 0x0
CALL 0x00020700
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff4f9c]
JMP 0x00019f2f
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe04]
PUSH 0x3
PUSH 0x0
CALL 0x00020700
ADD ESP,0xc
MOV EDI,EAX
PUSH 0x5
LEA EAX,[EBX + 0xffff5544]
JMP 0x00019fe6
MOV byte ptr [EBP + 0xfffffdf8],DL
CALL 0x00015d90
NOT EAX
PUSH EDX
AND EAX,0x1b6
PUSH EAX
PUSH dword ptr [EBP + 0xfffffddc]
PUSH dword ptr [EBP + 0xfffffe0c]
CALL 0x0001b7d0
MOVZX EDX,byte ptr [EBP + 0xfffffdf8]
ADD ESP,0x10
MOV ECX,ESI
TEST EAX,EAX
MOV byte ptr [EBP + 0xfffffe10],CL
CMOVNZ EDI,EDX
JMP 0x00018028
PUSH EAX
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe0c]
PUSH 0x4
CALL 0x00020540
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xffff551c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000121e0
PUSH ESI
PUSH EAX
PUSH 0x0
PUSH 0x0
CALL 0x00012390
MOV EAX,dword ptr [EBP + 0xfffffddc]
MOV EDX,dword ptr [EBP + 0xfffffde8]
MOV ECX,dword ptr [EBP + 0xfffffdec]
SUB EDX,dword ptr [EBP + 0xfffffdb0]
SBB ECX,dword ptr [EBP + 0xfffffdb4]
CALL 0x000149e0
TEST AL,AL
JNZ 0x00017ed4
JMP 0x00019fca
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Type propagation algorithm not settling */\n\nuint __regparm3\nFUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)\n\n{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}\n\n" comment comment (function_definition "uint __regparm3\nFUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)\n\n{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)" identifier (parameter_list "(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined1 param_3" type_identifier identifier) , (parameter_declaration "__ino_t *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "int *param_5" primitive_type (pointer_declarator "*param_5" * identifier)) , (parameter_declaration "int *param_6" primitive_type (pointer_declarator "*param_6" * identifier)) , (parameter_declaration "uint param_7" type_identifier identifier) , (parameter_declaration "code *param_8" type_identifier (pointer_declarator "*param_8" * identifier)) , (parameter_declaration "byte *param_9" type_identifier (pointer_declarator "*param_9" * identifier)) , (parameter_declaration "undefined1 *param_10" type_identifier (pointer_declarator "*param_10" * identifier)) ))) (compound_statement "{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}" { (declaration "code cVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (declaration "bool bVar4;" primitive_type identifier ;) (declaration "__mode_t _Var5;" type_identifier identifier ;) (declaration "char cVar6;" primitive_type identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "byte *pbVar13;" type_identifier (pointer_declarator "*pbVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "size_t sVar16;" primitive_type identifier ;) (declaration "byte **ppbVar17;" type_identifier (pointer_declarator "**ppbVar17" * (pointer_declarator "*ppbVar17" * identifier)) ;) (declaration "char *pcVar18;" primitive_type (pointer_declarator "*pcVar18" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "char *pcVar20;" primitive_type (pointer_declarator "*pcVar20" * identifier) ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "code *pcVar24;" type_identifier (pointer_declarator "*pcVar24" * identifier) ;) (declaration "undefined4 extraout_ECX;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_00;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_01;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_02;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_03;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_04;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_05;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_06;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_07;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_08;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_09;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_10;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_11;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_12;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_13;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_14;" type_identifier identifier ;) (declaration "byte bVar25;" type_identifier identifier ;) (declaration "stat64 *psVar26;" type_identifier (pointer_declarator "*psVar26" * identifier) ;) (declaration "undefined4 extraout_EDX;" type_identifier identifier ;) (declaration "undefined4 extraout_EDX_00;" type_identifier identifier ;) (declaration "int iVar27;" primitive_type identifier ;) (declaration "undefined **ppuVar28;" type_identifier (pointer_declarator "**ppuVar28" * (pointer_declarator "*ppuVar28" * identifier)) ;) (declaration "undefined1 *puVar29;" type_identifier (pointer_declarator "*puVar29" * identifier) ;) (declaration "undefined1 *puVar30;" type_identifier (pointer_declarator "*puVar30" * identifier) ;) (declaration "undefined1 *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined1 *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "undefined1 *puVar33;" type_identifier (pointer_declarator "*puVar33" * identifier) ;) (declaration "undefined1 *puVar34;" type_identifier (pointer_declarator "*puVar34" * identifier) ;) (declaration "byte *pbVar35;" type_identifier (pointer_declarator "*pbVar35" * identifier) ;) (declaration "byte *pbVar36;" type_identifier (pointer_declarator "*pbVar36" * identifier) ;) (declaration "undefined4 *puVar37;" type_identifier (pointer_declarator "*puVar37" * identifier) ;) (declaration "int in_GS_OFFSET;" primitive_type identifier ;) (declaration "undefined1 uVar38;" type_identifier identifier ;) (declaration "undefined1 uVar39;" type_identifier identifier ;) (declaration "byte bVar40;" type_identifier identifier ;) (declaration "__off64_t _Var41;" type_identifier identifier ;) (declaration "undefined8 uVar42;" type_identifier identifier ;) (declaration "undefined1 auStack_28c [7];" type_identifier (array_declarator "auStack_28c [7]" identifier [ number_literal ]) ;) (declaration "char local_285;" primitive_type identifier ;) (declaration "uint local_284;" type_identifier identifier ;) (declaration "undefined **local_280;" type_identifier (pointer_declarator "**local_280" * (pointer_declarator "*local_280" * identifier)) ;) (declaration "int local_27c;" primitive_type identifier ;) (declaration "uint local_278;" type_identifier identifier ;) (declaration "int local_274;" primitive_type identifier ;) (declaration "uint local_270;" type_identifier identifier ;) (declaration "code *local_26c;" type_identifier (pointer_declarator "*local_26c" * identifier) ;) (declaration "int local_268;" primitive_type identifier ;) (declaration "uint local_264;" type_identifier identifier ;) (declaration "int local_260;" primitive_type identifier ;) (declaration "code *local_25c;" type_identifier (pointer_declarator "*local_25c" * identifier) ;) (declaration "code *local_258;" type_identifier (pointer_declarator "*local_258" * identifier) ;) (declaration "code *local_254;" type_identifier (pointer_declarator "*local_254" * identifier) ;) (declaration "int local_250;" primitive_type identifier ;) (declaration "uint local_24c;" type_identifier identifier ;) (declaration "int local_248;" primitive_type identifier ;) (declaration "uint local_244;" type_identifier identifier ;) (declaration "stat64 *local_240;" type_identifier (pointer_declarator "*local_240" * identifier) ;) (declaration "uint local_23c;" type_identifier identifier ;) (declaration "stat64 *local_238;" type_identifier (pointer_declarator "*local_238" * identifier) ;) (declaration "stat64 *local_234;" type_identifier (pointer_declarator "*local_234" * identifier) ;) (declaration "char *local_230;" primitive_type (pointer_declarator "*local_230" * identifier) ;) (declaration "__ino_t *local_22c;" type_identifier (pointer_declarator "*local_22c" * identifier) ;) (declaration "int *local_228;" primitive_type (pointer_declarator "*local_228" * identifier) ;) (declaration "__ino_t local_224;" type_identifier identifier ;) (declaration "code *local_220;" type_identifier (pointer_declarator "*local_220" * identifier) ;) (declaration "code *local_21c;" type_identifier (pointer_declarator "*local_21c" * identifier) ;) (declaration "int local_218;" primitive_type identifier ;) (declaration "byte **local_214;" type_identifier (pointer_declarator "**local_214" * (pointer_declarator "*local_214" * identifier)) ;) (declaration "__ino_t local_210;" type_identifier identifier ;) (declaration "byte *local_20c;" type_identifier (pointer_declarator "*local_20c" * identifier) ;) (declaration "undefined1 *local_208;" type_identifier (pointer_declarator "*local_208" * identifier) ;) (declaration "uint local_204;" type_identifier identifier ;) (declaration "char *local_200;" primitive_type (pointer_declarator "*local_200" * identifier) ;) (declaration "uint local_1fc;" type_identifier identifier ;) (declaration "char *local_1f8;" primitive_type (pointer_declarator "*local_1f8" * identifier) ;) (declaration "char *local_1f4;" primitive_type (pointer_declarator "*local_1f4" * identifier) ;) (declaration "int *local_1f0;" primitive_type (pointer_declarator "*local_1f0" * identifier) ;) (declaration "undefined1 local_1dd;" type_identifier identifier ;) (declaration "uint local_1dc;" type_identifier identifier ;) (declaration "int local_1d8;" primitive_type identifier ;) (declaration "__ino_t local_1d4;" type_identifier identifier ;) (declaration "undefined4 local_1d0;" type_identifier identifier ;) (declaration "stat64 *local_1c4;" type_identifier (pointer_declarator "*local_1c4" * identifier) ;) (declaration "char local_1c0;" primitive_type identifier ;) (declaration "char local_1bf;" primitive_type identifier ;) (declaration "int local_1bc;" primitive_type identifier ;) (declaration "undefined1 local_1b4 [36];" type_identifier (array_declarator "local_1b4 [36]" identifier [ number_literal ]) ;) (declaration "__ino_t local_190;" type_identifier identifier ;) (declaration "undefined4 local_188;" type_identifier identifier ;) (declaration "__time_t local_174;" type_identifier identifier ;) (declaration "long local_170;" (sized_type_specifier "long" long) identifier ;) (declaration "__time_t local_16c;" type_identifier identifier ;) (declaration "long local_168;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_15c;" primitive_type identifier ;) (declaration "uint local_158;" type_identifier identifier ;) (declaration "stat64 local_154;" type_identifier identifier ;) (declaration "undefined1 local_f4 [48];" type_identifier (array_declarator "local_f4 [48]" identifier [ number_literal ]) ;) (declaration "int local_c4;" primitive_type identifier ;) (declaration "int local_c0;" primitive_type identifier ;) (declaration "uint local_bc;" type_identifier identifier ;) (declaration "int local_b8;" primitive_type identifier ;) (declaration "int local_9c;" primitive_type identifier ;) (declaration "uint local_98;" type_identifier identifier ;) (declaration "stat64 local_94;" type_identifier identifier ;) (declaration "__time_t local_30;" type_identifier identifier ;) (declaration "long local_2c;" (sized_type_specifier "long" long) identifier ;) (declaration "__time_t local_28;" type_identifier identifier ;) (declaration "long local_24;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_20;" primitive_type identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar40 = 0;" (assignment_expression "bVar40 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x15deb;" (assignment_expression "uStack_14 = 0x15deb" identifier = number_literal) ;) (expression_statement "ppuVar28 = &__DT_PLTGOT;" (assignment_expression "ppuVar28 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "local_200 = param_1;" (assignment_expression "local_200 = param_1" identifier = identifier) ;) (expression_statement "local_1f8 = param_2;" (assignment_expression "local_1f8 = param_2" identifier = identifier) ;) (expression_statement "local_22c = param_4;" (assignment_expression "local_22c = param_4" identifier = identifier) ;) (expression_statement "local_220 = (code *)param_9;" (assignment_expression "local_220 = (code *)param_9" identifier = (cast_expression "(code *)param_9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_21c = param_8;" (assignment_expression "local_21c = param_8" identifier = identifier) ;) (expression_statement "local_228 = param_5;" (assignment_expression "local_228 = param_5" identifier = identifier) ;) (expression_statement "local_208 = param_10;" (assignment_expression "local_208 = param_10" identifier = identifier) ;) (expression_statement "local_1f0 = param_6;" (assignment_expression "local_1f0 = param_6" identifier = identifier) ;) (expression_statement "local_1fc = param_7;" (assignment_expression "local_1fc = param_7" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,param_3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,param_3)" identifier (argument_list "(local_1f4._1_3_,param_3)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(char)param_7);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(char)param_7)" identifier = (call_expression "CONCAT31(local_224._1_3_,(char)param_7)" identifier (argument_list "(local_224._1_3_,(char)param_7)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(char)param_7" ( (type_descriptor "char" primitive_type) ) identifier) )))) ;) (expression_statement "local_20 = *(int *)(in_GS_OFFSET + 0x14);" (assignment_expression "local_20 = *(int *)(in_GS_OFFSET + 0x14)" identifier = (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*param_9 = 0;" (assignment_expression "*param_9 = 0" (pointer_expression "*param_9" * identifier) = number_literal) ;) (expression_statement "iVar10 = param_6[0xd];" (assignment_expression "iVar10 = param_6[0xd]" identifier = (subscript_expression "param_6[0xd]" identifier [ number_literal ])) ;) (if_statement "if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }" if (parenthesized_expression "((char)param_6[6] != '\0')" ( (binary_expression "(char)param_6[6] != '\0'" (cast_expression "(char)param_6[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "param_6[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }" { (if_statement "if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }" { (labeled_statement "LAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);" statement_identifier : (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,iVar10 == 0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,iVar10 == 0)" identifier (argument_list "(local_1f4._1_3_,iVar10 == 0)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (binary_expression "iVar10 == 0" identifier == number_literal) ))))) ;)) (if_statement "if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *local_208 = iVar10 == 0;\n      }" { (expression_statement "*local_208 = iVar10 == 0;" (assignment_expression "*local_208 = iVar10 == 0" (pointer_expression "*local_208" * identifier) = (binary_expression "iVar10 == 0" identifier == number_literal)) ;) })) (goto_statement "goto LAB_00015e8b;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6])" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(char)param_6[6])" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(char)param_6[6])" identifier (argument_list "(local_1f4._1_3_,(char)param_6[6])" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(char)param_6[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "param_6[6]" identifier [ number_literal ])) ))))) ;) (expression_statement "iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);" (assignment_expression "iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c)" identifier = (call_expression "FUN_000209f0(0xffffff9c,param_1,0xffffff9c)" identifier (argument_list "(0xffffff9c,param_1,0xffffff9c)" ( number_literal , identifier , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }" { (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = *piVar14;" (assignment_expression "iVar10 = *piVar14" identifier = (pointer_expression "*piVar14" * identifier)) ;) (goto_statement "goto LAB_00015e6f;" goto statement_identifier ;) })) (if_statement "if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_208 = 1;\n    }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) })) (labeled_statement "LAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x31) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x31) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x31)" * (cast_expression "(char *)((int)local_1f0 + 0x31)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x31)" ( (binary_expression "(int)local_1f0 + 0x31" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00015ef0;" goto statement_identifier ;) }))) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = local_1f0[1];" (assignment_expression "iVar8 = local_1f0[1]" identifier = (subscript_expression "local_1f0[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar20 = local_1f8;" (assignment_expression "pcVar20 = local_1f8" identifier = identifier) ;) (labeled_statement "joined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" statement_identifier : (if_statement "if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" if (parenthesized_expression "(iVar8 == 2)" ( (binary_expression "iVar8 == 2" identifier == number_literal) )) (compound_statement "{\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" { (expression_statement "iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);" (assignment_expression "iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4)" identifier = (call_expression "__lxstat64(3,pcVar20,(stat64 *)local_1b4)" identifier (argument_list "(3,pcVar20,(stat64 *)local_1b4)" ( number_literal , identifier , (cast_expression "(stat64 *)local_1b4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) }) (else_clause "else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" else (compound_statement "{\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" { (expression_statement "iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);" (assignment_expression "iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4)" identifier = (call_expression "__xstat64(3,pcVar20,(stat64 *)local_1b4)" identifier (argument_list "(3,pcVar20,(stat64 *)local_1b4)" ( number_literal , identifier , (cast_expression "(stat64 *)local_1b4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) })))) (if_statement "if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }\n      goto LAB_00015ef0;\n    }" { (expression_statement "local_204 = local_1b4._16_4_;" (assignment_expression "local_204 = local_1b4._16_4_" identifier = (field_expression "local_1b4._16_4_" identifier . field_identifier)) ;) (if_statement "if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }" if (parenthesized_expression "(((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0'))" ( (binary_expression "((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')" (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2a) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2a) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2a)" * (cast_expression "(char *)((int)local_1f0 + 0x2a)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2a)" ( (binary_expression "(int)local_1f0 + 0x2a" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    /* WARNING: Subroutine does not return */\n        error();\n      }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x19) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x19) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x19)" * (cast_expression "(char *)((int)local_1f0 + 0x19)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x19)" ( (binary_expression "(int)local_1f0 + 0x19" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          dcgettext();\n        }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n          dcgettext();\n        }" else (compound_statement "{\n          dcgettext();\n        }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) }))) comment (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_00015ef0;" goto statement_identifier ;) })) (expression_statement "puVar30 = &stack0xfffffd68;" (assignment_expression "puVar30 = &stack0xfffffd68" identifier = (pointer_expression "&stack0xfffffd68" & identifier)) ;) (labeled_statement "LAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;" statement_identifier : (expression_statement "*(undefined4 *)(puVar30 + -4) = 4;" (assignment_expression "*(undefined4 *)(puVar30 + -4) = 4" (pointer_expression "*(undefined4 *)(puVar30 + -4)" * (cast_expression "(undefined4 *)(puVar30 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + -4)" ( (binary_expression "puVar30 + -4" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "*(undefined4 *)(puVar30 + -8) = 0x16215;" (assignment_expression "*(undefined4 *)(puVar30 + -8) = 0x16215" (pointer_expression "*(undefined4 *)(puVar30 + -8)" * (cast_expression "(undefined4 *)(puVar30 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + -8)" ( (binary_expression "puVar30 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar31 = puVar30 + 4;" (assignment_expression "puVar31 = puVar30 + 4" identifier = (binary_expression "puVar30 + 4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar30 + 4) = 5;" (assignment_expression "*(undefined4 *)(puVar30 + 4) = 5" (pointer_expression "*(undefined4 *)(puVar30 + 4)" * (cast_expression "(undefined4 *)(puVar30 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 4)" ( (binary_expression "puVar30 + 4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193)" identifier = (cast_expression "(undefined **)((int)ppuVar28 + -0xb193)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar28 + -0xb193)" ( (binary_expression "(int)ppuVar28 + -0xb193" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;" statement_identifier : (expression_statement "*(undefined ***)(puVar31 + -4) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar31 + -4) = ppuVar28" (pointer_expression "*(undefined ***)(puVar31 + -4)" * (cast_expression "(undefined ***)(puVar31 + -4)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar31 + -4)" ( (binary_expression "puVar31 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar31 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar31 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar31 + -8)" * (cast_expression "(undefined4 *)(puVar31 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -8)" ( (binary_expression "puVar31 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = 0x1622a;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = 0x1622a" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" * (cast_expression "(undefined4 *)(puVar31 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0xc)" ( (binary_expression "puVar31 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = 0x16231;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = 0x16231" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" * (cast_expression "(undefined4 *)(puVar31 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0xc)" ( (binary_expression "puVar31 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" * (cast_expression "(undefined4 *)(puVar31 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0xc)" ( (binary_expression "puVar31 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar31 + -0x10) = uVar12;" (assignment_expression "*(undefined4 *)(puVar31 + -0x10) = uVar12" (pointer_expression "*(undefined4 *)(puVar31 + -0x10)" * (cast_expression "(undefined4 *)(puVar31 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x10)" ( (binary_expression "puVar31 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar31 + -0x14) = *piVar14;" (assignment_expression "*(int *)(puVar31 + -0x14) = *piVar14" (pointer_expression "*(int *)(puVar31 + -0x14)" * (cast_expression "(int *)(puVar31 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x14)" ( (binary_expression "puVar31 + -0x14" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar31 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar31 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar31 + -0x18)" * (cast_expression "(undefined4 *)(puVar31 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x18)" ( (binary_expression "puVar31 + -0x18" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;" (assignment_expression "*(undefined **)(puVar31 + -0x1c) = &UNK_0001623c" (pointer_expression "*(undefined **)(puVar31 + -0x1c)" * (cast_expression "(undefined **)(puVar31 + -0x1c)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + -0x1c)" ( (binary_expression "puVar31 + -0x1c" identifier + number_literal) )))) = (pointer_expression "&UNK_0001623c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;" statement_identifier : (if_statement "if (iVar10 == 0) goto LAB_000161c0;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000161c0;" goto statement_identifier ;))) (if_statement "if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }" if (parenthesized_expression "((iVar10 != 0x11) || (local_1f0[2] != 2))" ( (binary_expression "(iVar10 != 0x11) || (local_1f0[2] != 2)" (parenthesized_expression "(iVar10 != 0x11)" ( (binary_expression "iVar10 != 0x11" identifier != number_literal) )) || (parenthesized_expression "(local_1f0[2] != 2)" ( (binary_expression "local_1f0[2] != 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }" { (expression_statement "iVar8 = local_1f0[1];" (assignment_expression "iVar8 = local_1f0[1]" identifier = (subscript_expression "local_1f0[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar20 = local_200;" (assignment_expression "pcVar20 = local_200" identifier = identifier) ;) (goto_statement "goto joined_r0x00015eac;" goto statement_identifier ;) })) (labeled_statement "LAB_00015ef0:\n  puVar32 = auStack_28c;" statement_identifier : (expression_statement "puVar32 = auStack_28c;" (assignment_expression "puVar32 = auStack_28c" identifier = identifier) ;)) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }" if (parenthesized_expression "(((byte)local_1fc != '\0') && (local_1f0[0x10] != 0))" ( (binary_expression "((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)" (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(local_1f0[0x10] != 0)" ( (binary_expression "local_1f0[0x10] != 0" (subscript_expression "local_1f0[0x10]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }" { (expression_statement "local_20c = local_1b4;" (assignment_expression "local_20c = local_1b4" identifier = identifier) ;) (if_statement "if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }" if (parenthesized_expression "(((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0'))))" ( (binary_expression "((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))" (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))" ( (parenthesized_expression "(*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0'))" ( (binary_expression "*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')" (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" * identifier) == number_literal) && (parenthesized_expression "(cVar6 = FUN_0001d250(), cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_0001d250(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_0001d250()" identifier = (call_expression "FUN_0001d250()" identifier (argument_list "()" ( )))) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) ))) )) (compound_statement "{\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n      error(0,0,uVar11);\n    }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" identifier (argument_list "(0,0,uVar11)" ( number_literal , number_literal , identifier ))) ;) })) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_20c = (byte *)0x1;" (assignment_expression "local_20c = (byte *)0x1" identifier = (cast_expression "(byte *)0x1" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }" if (parenthesized_expression "(local_1f0[1] != 4)" ( (binary_expression "local_1f0[1] != 4" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }" { (expression_statement "local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);" (assignment_expression "local_20c = (byte *)(local_1f0[1] == 3 & local_1fc)" identifier = (cast_expression "(byte *)(local_1f0[1] == 3 & local_1fc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0[1] == 3 & local_1fc)" ( (binary_expression "local_1f0[1] == 3 & local_1fc" (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) & identifier) )))) ;) })) (if_statement "if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }" { (if_statement "if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }" if (parenthesized_expression "((iVar10 != 0x11) || (local_1f0[2] != 2))" ( (binary_expression "(iVar10 != 0x11) || (local_1f0[2] != 2)" (parenthesized_expression "(iVar10 != 0x11)" ( (binary_expression "iVar10 != 0x11" identifier != number_literal) )) || (parenthesized_expression "(local_1f0[2] != 2)" ( (binary_expression "local_1f0[2] != 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }" { (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" if (parenthesized_expression "(uVar9 == 0x8000)" ( (binary_expression "uVar9 == 0x8000" identifier == number_literal) )) (compound_statement "{\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }" { (labeled_statement "LAB_00016b80:\n        iVar8 = 0x100;" statement_identifier : (expression_statement "iVar8 = 0x100;" (assignment_expression "iVar8 = 0x100" identifier = number_literal) ;)) (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6])" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6])" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,(char)local_1f0[6])" identifier (argument_list "(local_214._1_3_,(char)local_1f0[6])" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) ))))) ;) (if_statement "if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }" if (parenthesized_expression "(((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0))" ( (binary_expression "((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)" (parenthesized_expression "((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0'))" ( (binary_expression "(((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')" (parenthesized_expression "(((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0'))" ( (binary_expression "((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')" (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')" ( (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0'" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" identifier (argument_list "(local_214._1_3_,(char)local_1f0[0xb])" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) ))))) , (binary_expression "(char)local_1f0[0xb] == '\0'" (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence '))) ))) )) && (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')" ( (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0'" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" identifier (argument_list "(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) , (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ))) )) && (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)" ( (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,1)" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,1)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,1)" identifier (argument_list "(local_214._1_3_,1)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , number_literal ))))) , (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" * identifier) == number_literal)) ))) )) (compound_statement "{\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }" { (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" identifier (argument_list "(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;" (assignment_expression "iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8" identifier = (binary_expression "(uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8" (call_expression "(uint)(*(char *)((int)local_1f0 + 0x15) != '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(char *)((int)local_1f0 + 0x15) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) << number_literal)) ;) })) }) (else_clause "else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" else (compound_statement "{\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" { (expression_statement "iVar8 = 0x100;" (assignment_expression "iVar8 = 0x100" identifier = number_literal) ;) (expression_statement "bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;" (assignment_expression "bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1" identifier = (binary_expression "(uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1" (parenthesized_expression "(uVar9 == 0xa000 || uVar9 == 0x4000)" ( (binary_expression "uVar9 == 0xa000 || uVar9 == 0x4000" (binary_expression "uVar9 == 0xa000" identifier == number_literal) || (binary_expression "uVar9 == 0x4000" identifier == number_literal)) )) | (binary_expression "*(byte *)(local_1f0 + 5) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) )))) ^ number_literal))) ;) (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25)" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,bVar25)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,bVar25)" identifier (argument_list "(local_214._1_3_,bVar25)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 == 0) goto LAB_00016b80;" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00016b80;" goto statement_identifier ;)) }))) (expression_statement "iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);" (assignment_expression "iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8)" identifier = (call_expression "__fxstatat64(3,-100,local_1f8,&local_154,iVar8)" identifier (argument_list "(3,-100,local_1f8,&local_154,iVar8)" ( number_literal , number_literal , identifier , (pointer_expression "&local_154" & identifier) , identifier )))) ;) (if_statement "if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }" { (expression_statement "local_230 = (char *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (char *)((uint)local_230 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_230 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230 & 0xffffff00)" ( (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) }) (else_clause "else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" else (compound_statement "{\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" { (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }" if (parenthesized_expression "(*piVar14 == 0x28)" ( (binary_expression "*piVar14 == 0x28" (pointer_expression "*piVar14" * identifier) == number_literal) )) (compound_statement "{\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }" { (if_statement "if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x16) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x16) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x16)" * (cast_expression "(char *)((int)local_1f0 + 0x16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017070;" goto statement_identifier ;)) (expression_statement "local_230 = (char *)((uint)local_230._1_3_ << 8);" (assignment_expression "local_230 = (char *)((uint)local_230._1_3_ << 8)" identifier = (cast_expression "(char *)((uint)local_230._1_3_ << 8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230._1_3_ << 8)" ( (binary_expression "(uint)local_230._1_3_ << 8" (cast_expression "(uint)local_230._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_230._1_3_" identifier . field_identifier)) << number_literal) )))) ;) }) (else_clause "else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }" else (compound_statement "{\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }\n        }" { (expression_statement "local_230 = (char *)CONCAT31(local_230._1_3_,1);" (assignment_expression "local_230 = (char *)CONCAT31(local_230._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_230._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_230._1_3_,1)" identifier (argument_list "(local_230._1_3_,1)" ( (field_expression "local_230._1_3_" identifier . field_identifier) , number_literal ))))) ;) (if_statement "if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (compound_statement "{\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*local_1f0,uVar11);\n          }" { (labeled_statement "LAB_00017070:\n            local_1f0 = piVar14;" statement_identifier : (expression_statement "local_1f0 = piVar14;" (assignment_expression "local_1f0 = piVar14" identifier = identifier) ;)) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,*local_1f0,uVar11);" (call_expression "error(0,*local_1f0,uVar11)" identifier (argument_list "(0,*local_1f0,uVar11)" ( number_literal , (pointer_expression "*local_1f0" * identifier) , identifier ))) ;) })) }))) (expression_statement "local_214 = (byte **)((uint)local_214 & 0xffffff00);" (assignment_expression "local_214 = (byte **)((uint)local_214 & 0xffffff00)" identifier = (cast_expression "(byte **)((uint)local_214 & 0xffffff00)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((uint)local_214 & 0xffffff00)" ( (binary_expression "(uint)local_214 & 0xffffff00" (cast_expression "(uint)local_214" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(iVar10 != 0x11)" ( (binary_expression "iVar10 != 0x11" identifier != number_literal) )) (compound_statement "{\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" { (expression_statement "uVar38 = local_230._0_1_;" (assignment_expression "uVar38 = local_230._0_1_" identifier = (field_expression "local_230._0_1_" identifier . field_identifier)) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar38)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,uVar38)" identifier (argument_list "(local_1f4._1_3_,uVar38)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) }))) (if_statement "if (local_1f0[2] == 2) goto LAB_00016048;" if (parenthesized_expression "(local_1f0[2] == 2)" ( (binary_expression "local_1f0[2] == 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (if_statement "if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }" if (parenthesized_expression "((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev))" ( (binary_expression "(local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)" (parenthesized_expression "(local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino)" ( (binary_expression "local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino" (binary_expression "local_158 == local_154.st_ino._4_4_" identifier == (field_expression "local_154.st_ino._4_4_" (field_expression "local_154.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "local_15c == (int)local_154.st_ino" identifier == (cast_expression "(int)local_154.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_ino" identifier . field_identifier)))) )) && (parenthesized_expression "(local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)" ( (binary_expression "local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev" (binary_expression "local_1b4._4_4_ == local_154.st_dev._4_4_" (field_expression "local_1b4._4_4_" identifier . field_identifier) == (field_expression "local_154.st_dev._4_4_" (field_expression "local_154.st_dev" identifier . field_identifier) . field_identifier)) && (binary_expression "(byte *)local_1b4._0_4_ == (byte *)local_154.st_dev" (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)) == (cast_expression "(byte *)local_154.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_154.st_dev" identifier . field_identifier)))) ))) )) (compound_statement "{\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }" { (expression_statement "cVar6 = *(char *)((int)local_1f0 + 0x17);" (assignment_expression "cVar6 = *(char *)((int)local_1f0 + 0x17)" identifier = (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" { (if_statement "if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }" if (parenthesized_expression "(local_1f0[1] == 2)" ( (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }" { (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (expression_statement "bVar4 = true;" (assignment_expression "bVar4 = true" identifier = true) ;) (goto_statement "goto LAB_000175fc;" goto statement_identifier ;) })) (expression_statement "local_234 = (stat64 *)local_f4;" (assignment_expression "local_234 = (stat64 *)local_f4" identifier = (cast_expression "(stat64 *)local_f4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar10 = __lxstat64(3,local_1f8,local_234);" (assignment_expression "iVar10 = __lxstat64(3,local_1f8,local_234)" identifier = (call_expression "__lxstat64(3,local_1f8,local_234)" identifier (argument_list "(3,local_1f8,local_234)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }" { (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" identifier = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "iVar10 = __lxstat64(3,local_200,local_240);" (assignment_expression "iVar10 = __lxstat64(3,local_200,local_240)" identifier = (call_expression "__lxstat64(3,local_200,local_240)" identifier (argument_list "(3,local_200,local_240)" ( number_literal , identifier , identifier )))) ;) (if_statement "if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;" if (parenthesized_expression "((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0'))))" ( (binary_expression "(iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))" ( (parenthesized_expression "((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0'))" ( (binary_expression "(bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')" (parenthesized_expression "(bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000))" ( (comma_expression "bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (assignment_expression "bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" identifier = (binary_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" (parenthesized_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c)" ( (binary_expression "local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c" (binary_expression "local_94.st_ino._4_4_ == local_98" (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier) == identifier) && (binary_expression "(int)local_94.st_ino == local_9c" (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)) == identifier)) )) && (parenthesized_expression "((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" ( (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_" (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_" (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier)) == (cast_expression "(byte *)local_f4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._0_4_" identifier . field_identifier))) && (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "local_f4._4_4_" identifier . field_identifier))) )))) , (comma_expression "psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (assignment_expression "psVar26 = local_240" identifier = identifier) , (binary_expression "(local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (binary_expression "(local_94.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_94.st_mode & 0xf000)" ( (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) || (parenthesized_expression "((local_f4._16_4_ & 0xf000) != 0xa000)" ( (binary_expression "(local_f4._16_4_ & 0xf000) != 0xa000" (parenthesized_expression "(local_f4._16_4_ & 0xf000)" ( (binary_expression "local_f4._16_4_ & 0xf000" (field_expression "local_f4._16_4_" identifier . field_identifier) & number_literal) )) != number_literal) ))))) )) || (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (goto_statement "goto LAB_0001761e;" goto statement_identifier ;)) })) (labeled_statement "LAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" statement_identifier : (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" ( (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (labeled_statement "LAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);" statement_identifier : (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,cVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,cVar6)" identifier (argument_list "(local_1f4._1_3_,cVar6)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;)) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (if_statement "if (local_1f0[1] != 2) goto LAB_00016048;" if (parenthesized_expression "(local_1f0[1] != 2)" ( (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (expression_statement "bVar4 = false;" (assignment_expression "bVar4 = false" identifier = false) ;) (labeled_statement "LAB_000175fc:\n      local_234 = &local_154;" statement_identifier : (expression_statement "local_234 = &local_154;" (assignment_expression "local_234 = &local_154" identifier = (pointer_expression "&local_154" & identifier)) ;)) (expression_statement "psVar26 = (stat64 *)local_1b4;" (assignment_expression "psVar26 = (stat64 *)local_1b4" identifier = (cast_expression "(stat64 *)local_1b4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" if (parenthesized_expression "(((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000))" ( (binary_expression "((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((local_1b4._16_4_ & 0xf000) != 0xa000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) != 0xa000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) != number_literal) )) || (parenthesized_expression "((local_154.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_154.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" { (labeled_statement "LAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" statement_identifier : (if_statement "if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" if (parenthesized_expression "(*local_1f0 != 0)" ( (binary_expression "*local_1f0 != 0" (pointer_expression "*local_1f0" * identifier) != number_literal) )) (compound_statement "{\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" { (if_statement "if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" { (expression_statement "bVar25 = FUN_00020ea0();" (assignment_expression "bVar25 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar25 = bVar25 ^ 1;" (assignment_expression "bVar25 = bVar25 ^ 1" identifier = (binary_expression "bVar25 ^ 1" identifier ^ number_literal)) ;) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) })) (if_statement "if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;" if (parenthesized_expression "(((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))" ( (binary_expression "((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000)" (parenthesized_expression "((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000))" ( (binary_expression "(((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "(((char)local_1f0[6] != '\0') || (local_1f0[1] == 2))" ( (binary_expression "((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)" (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_1f0[1] == 2)" ( (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) ))) )) || (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "((local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "(local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" ( (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" identifier -> field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_000181e8;" goto statement_identifier ;)) (goto_statement "goto LAB_00017680;" goto statement_identifier ;) }))) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;) (if_statement "if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" if (parenthesized_expression "((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0'))" ( (binary_expression "(cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')" (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }" { (if_statement "if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }" if (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }" { (labeled_statement "LAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;" statement_identifier : (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;)) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }" { (labeled_statement "LAB_0001849c:\n              cVar6 = (char)local_1f0[6];" statement_identifier : (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;)) }) (else_clause "else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" else (compound_statement "{\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" { (labeled_statement "LAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;" statement_identifier : (if_statement "if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;" if (parenthesized_expression "((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev))" ( (binary_expression "(*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)" (parenthesized_expression "(*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino)" ( (binary_expression "*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino" (binary_expression "*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4)" (pointer_expression "*(int *)((int)&psVar26->st_ino + 4)" * (cast_expression "(int *)((int)&psVar26->st_ino + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar26->st_ino + 4)" ( (binary_expression "(int)&psVar26->st_ino + 4" (cast_expression "(int)&psVar26->st_ino" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar26->st_ino" & (field_expression "psVar26->st_ino" identifier -> field_identifier))) + number_literal) )))) != (pointer_expression "*(int *)((int)&local_234->st_ino + 4)" * (cast_expression "(int *)((int)&local_234->st_ino + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_ino + 4)" ( (binary_expression "(int)&local_234->st_ino + 4" (cast_expression "(int)&local_234->st_ino" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_ino" & (field_expression "local_234->st_ino" identifier -> field_identifier))) + number_literal) ))))) || (binary_expression "(int)psVar26->st_ino != (int)local_234->st_ino" (cast_expression "(int)psVar26->st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar26->st_ino" identifier -> field_identifier)) != (cast_expression "(int)local_234->st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_234->st_ino" identifier -> field_identifier)))) )) || (parenthesized_expression "(*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)" ( (binary_expression "*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev" (binary_expression "*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4)" (pointer_expression "*(int *)((int)&psVar26->st_dev + 4)" * (cast_expression "(int *)((int)&psVar26->st_dev + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar26->st_dev + 4)" ( (binary_expression "(int)&psVar26->st_dev + 4" (cast_expression "(int)&psVar26->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar26->st_dev" & (field_expression "psVar26->st_dev" identifier -> field_identifier))) + number_literal) )))) != (pointer_expression "*(int *)((int)&local_234->st_dev + 4)" * (cast_expression "(int *)((int)&local_234->st_dev + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_dev + 4)" ( (binary_expression "(int)&local_234->st_dev + 4" (cast_expression "(int)&local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_dev" & (field_expression "local_234->st_dev" identifier -> field_identifier))) + number_literal) ))))) || (binary_expression "(int)psVar26->st_dev != (int)local_234->st_dev" (cast_expression "(int)psVar26->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar26->st_dev" identifier -> field_identifier)) != (cast_expression "(int)local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "local_234->st_dev" identifier -> field_identifier)))) ))) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;))) (expression_statement "cVar6 = *(char *)((int)local_1f0 + 0x17);" (assignment_expression "cVar6 = *(char *)((int)local_1f0 + 0x17)" identifier = (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (cVar6 != '\0') goto LAB_00018440;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00018440;" goto statement_identifier ;)) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;) }))) (goto_statement "goto LAB_000184a6;" goto statement_identifier ;) })) }) (else_clause "else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" else (compound_statement "{\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" { (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (if_statement "if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" if (parenthesized_expression "((bVar3) && (1 < local_234->st_nlink))" ( (binary_expression "(bVar3) && (1 < local_234->st_nlink)" (parenthesized_expression "(bVar3)" ( identifier )) && (parenthesized_expression "(1 < local_234->st_nlink)" ( (binary_expression "1 < local_234->st_nlink" number_literal < (field_expression "local_234->st_nlink" identifier -> field_identifier)) ))) )) (compound_statement "{\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" { (expression_statement "local_238 = psVar26;" (assignment_expression "local_238 = psVar26" identifier = identifier) ;) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" { (expression_statement "psVar26 = local_238;" (assignment_expression "psVar26 = local_238" identifier = identifier) ;) (if_statement "if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;" if (parenthesized_expression "((local_238->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_238->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_238->st_mode & 0xf000)" ( (binary_expression "local_238->st_mode & 0xf000" (field_expression "local_238->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_0001847d;" goto statement_identifier ;)) (goto_statement "goto LAB_0001849c;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier (argument_list "(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ))))) ;) (expression_statement "bVar25 = *(byte *)(local_1f0 + 6) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 6) ^ 1" identifier = (binary_expression "*(byte *)(local_1f0 + 6) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ^ number_literal)) ;) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) })) (if_statement "if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;" if (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000187a8;" goto statement_identifier ;)) (labeled_statement "LAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" statement_identifier : (if_statement "if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" if (parenthesized_expression "((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0))" ( (binary_expression "(((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)" (parenthesized_expression "(((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink))" ( (binary_expression "((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)" (parenthesized_expression "((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000))" ( (binary_expression "(cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)" (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0xa000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0xa000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) && (parenthesized_expression "(1 < local_234->st_nlink)" ( (binary_expression "1 < local_234->st_nlink" number_literal < (field_expression "local_234->st_nlink" identifier -> field_identifier)) ))) )) && (parenthesized_expression "(local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)" ( (comma_expression "local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "local_238 = psVar26" identifier = identifier) , (comma_expression "pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "pcVar20 = canonicalize_file_name(local_200)" identifier = (call_expression "canonicalize_file_name(local_200)" identifier (argument_list "(local_200)" ( identifier )))) , (comma_expression "psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "psVar26 = local_238" identifier = identifier) , (binary_expression "pcVar20 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))))) ))) )) (compound_statement "{\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" { (expression_statement "bVar25 = FUN_00020ea0();" (assignment_expression "bVar25 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar25 = bVar25 ^ 1;" (assignment_expression "bVar25 = bVar25 ^ 1" identifier = (binary_expression "bVar25 ^ 1" identifier ^ number_literal)) ;) (expression_statement "free(pcVar20);" (call_expression "free(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier ))) ;) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) }))) }))) (if_statement "if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" if (parenthesized_expression "(((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           )" ( (binary_expression "((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((char)local_1f0[0xb] == '\0')" ( (binary_expression "(char)local_1f0[0xb] == '\0'" (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" ( (comma_expression "local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) , (binary_expression "((uint)local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) != number_literal)) ))) )) (compound_statement "{\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" { (if_statement "if (local_1f0[1] != 2) goto LAB_00017680;" if (parenthesized_expression "(local_1f0[1] != 2)" ( (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_00017680;" goto statement_identifier ;)) (if_statement "if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" if (parenthesized_expression "((psVar26->st_mode & 0xf000) == 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }" { (expression_statement "iVar10 = __xstat64(3,local_200,&local_94);" (assignment_expression "iVar10 = __xstat64(3,local_200,&local_94)" identifier = (call_expression "__xstat64(3,local_200,&local_94)" identifier (argument_list "(3,local_200,&local_94)" ( number_literal , identifier , (pointer_expression "&local_94" & identifier) )))) ;) (if_statement "if (iVar10 != 0) goto LAB_00016048;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) }) (else_clause "else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" else (compound_statement "{\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" { (expression_statement "ppbVar17 = (byte **)&local_94;" (assignment_expression "ppbVar17 = (byte **)&local_94" identifier = (cast_expression "(byte **)&local_94" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_94" & identifier))) ;) (for_statement "for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }" for ( (assignment_expression "iVar10 = 0x18" identifier = number_literal) ; (binary_expression "iVar10 != 0" identifier != number_literal) ; (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ) (compound_statement "{\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }" { (expression_statement "*ppbVar17 = *(byte **)&psVar26->st_dev;" (assignment_expression "*ppbVar17 = *(byte **)&psVar26->st_dev" (pointer_expression "*ppbVar17" * identifier) = (pointer_expression "*(byte **)&psVar26->st_dev" * (cast_expression "(byte **)&psVar26->st_dev" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&psVar26->st_dev" & (field_expression "psVar26->st_dev" identifier -> field_identifier))))) ;) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;" (assignment_expression "ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "ppbVar17 + (uint)bVar40 * -2 + 1" (binary_expression "ppbVar17 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) }))) (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }" { (expression_statement "iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);" (assignment_expression "iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4)" identifier = (call_expression "__xstat64(3,local_1f8,(stat64 *)local_f4)" identifier (argument_list "(3,local_1f8,(stat64 *)local_f4)" ( number_literal , identifier , (cast_expression "(stat64 *)local_f4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (iVar10 != 0) goto LAB_00016048;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) }) (else_clause "else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" else (compound_statement "{\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" { (expression_statement "psVar26 = local_234;" (assignment_expression "psVar26 = local_234" identifier = identifier) ;) (expression_statement "puVar37 = (undefined4 *)local_f4;" (assignment_expression "puVar37 = (undefined4 *)local_f4" identifier = (cast_expression "(undefined4 *)local_f4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (for_statement "for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }" for ( (assignment_expression "iVar10 = 0x18" identifier = number_literal) ; (binary_expression "iVar10 != 0" identifier != number_literal) ; (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ) (compound_statement "{\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }" { (expression_statement "*puVar37 = (int)psVar26->st_dev;" (assignment_expression "*puVar37 = (int)psVar26->st_dev" (pointer_expression "*puVar37" * identifier) = (cast_expression "(int)psVar26->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar26->st_dev" identifier -> field_identifier))) ;) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "puVar37 = puVar37 + (uint)bVar40 * -2 + 1;" (assignment_expression "puVar37 = puVar37 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "puVar37 + (uint)bVar40 * -2 + 1" (binary_expression "puVar37 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) }))) (if_statement "if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" if (parenthesized_expression "((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_))" ( (binary_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)" (parenthesized_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c)" ( (binary_expression "local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c" (binary_expression "local_94.st_ino._4_4_ == local_98" (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier) == identifier) && (binary_expression "(int)local_94.st_ino == local_9c" (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)) == identifier)) )) && (parenthesized_expression "(local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)" ( (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_" (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "local_f4._4_4_" identifier . field_identifier)) && (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_" (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier)) == (cast_expression "(byte *)local_f4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._0_4_" identifier . field_identifier)))) ))) )) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" { (if_statement "if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017680;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" identifier (argument_list "(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (binary_expression "(local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" ( (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) ))))) ;) })) })) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }" { (if_statement "if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;" if (parenthesized_expression "((*local_1f0 != 0) || (!bVar4))" ( (binary_expression "(*local_1f0 != 0) || (!bVar4)" (parenthesized_expression "(*local_1f0 != 0)" ( (binary_expression "*local_1f0 != 0" (pointer_expression "*local_1f0" * identifier) != number_literal) )) || (parenthesized_expression "(!bVar4)" ( (unary_expression "!bVar4" ! identifier) ))) )) (goto_statement "goto LAB_000181e8;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier (argument_list "(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ))))) ;) (expression_statement "cVar6 = '\x01';" (assignment_expression "cVar6 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "bVar25 = *(byte *)(local_1f0 + 6) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 6) ^ 1" identifier = (binary_expression "*(byte *)(local_1f0 + 6) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ^ number_literal)) ;) (labeled_statement "LAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;" statement_identifier : (if_statement "if (bVar25 != 0) goto LAB_00018440;" if (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00018440;" goto statement_identifier ;))) })) (labeled_statement "LAB_00017680:\n      FUN_000203c0();" statement_identifier : (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;)) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_000176b3:\n      uVar11 = dcgettext();" statement_identifier : (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;)) (goto_statement "goto LAB_000176c0;" goto statement_identifier ;) })) (expression_statement "local_230 = (char *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (char *)((uint)local_230 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_230 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230 & 0xffffff00)" ( (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "local_214 = (byte **)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (byte **)((uint)local_214._1_3_ << 8)" identifier = (cast_expression "(byte **)((uint)local_214._1_3_ << 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((uint)local_214._1_3_ << 8)" ( (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_214._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (labeled_statement "LAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2d) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2d) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2d)" * (cast_expression "(char *)((int)local_1f0 + 0x2d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2d)" ( (binary_expression "(int)local_1f0 + 0x2d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" { (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00017420;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017420;" goto statement_identifier ;)) (if_statement "if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }" if (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }" { (labeled_statement "LAB_00016ca2:\n        puVar34 = auStack_28c;" statement_identifier : (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;)) (if_statement "if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;" if (parenthesized_expression "((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))" ( (binary_expression "(local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')))" (parenthesized_expression "(local_1f0[2] == 2)" ( (binary_expression "local_1f0[2] == 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) == number_literal) )) || (parenthesized_expression "((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')))" ( (parenthesized_expression "(local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))" ( (binary_expression "local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')" (binary_expression "local_1f0[2] == 3" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) == number_literal) && (parenthesized_expression "(cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')" ( (comma_expression "cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'" (assignment_expression "cVar6 = FUN_00014de0()" identifier = (call_expression "FUN_00014de0()" identifier (argument_list "()" ( )))) , (comma_expression "puVar34 = auStack_28c, cVar6 == '\0'" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) , (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')))) ))) )) ))) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) })) (labeled_statement "LAB_00016cbd:\n      puVar34 = auStack_28c;" statement_identifier : (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;)) (if_statement "if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }" { (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }" if (parenthesized_expression "((local_154.st_mode & 0xf000) != 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) != 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }" { (if_statement "if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" if (parenthesized_expression "(uVar9 == 0x4000)" ( (binary_expression "uVar9 == 0x4000" identifier == number_literal) )) (compound_statement "{\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" { (if_statement "if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0))" ( (binary_expression "((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)" (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar10 = *local_1f0, iVar10 == 0)" ( (comma_expression "iVar10 = *local_1f0, iVar10 == 0" (assignment_expression "iVar10 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" { (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) (if_statement "if ((byte)local_1fc != '\0') goto LAB_00016d0d;" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016d0d;" goto statement_identifier ;)) (goto_statement "goto LAB_00017827;" goto statement_identifier ;) })) (expression_statement "iVar10 = *local_1f0;" (assignment_expression "iVar10 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) ;) (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" identifier = identifier) ;) (if_statement "if ((byte)local_1fc == '\0') goto LAB_00016d69;" if (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016d69;" goto statement_identifier ;)) (labeled_statement "LAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" statement_identifier : (if_statement "if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" if (parenthesized_expression "(iVar10 != 3)" ( (binary_expression "iVar10 != 3" identifier != number_literal) )) (compound_statement "{\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" { (expression_statement "cVar6 = FUN_0001d250();" (assignment_expression "cVar6 = FUN_0001d250()" identifier = (call_expression "FUN_0001d250()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" { (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) (if_statement "if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;" if (parenthesized_expression "((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000))" ( (binary_expression "(uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "(uVar9 != 0x4000)" ( (binary_expression "uVar9 != 0x4000" identifier != number_literal) )) && (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_0001828c;" goto statement_identifier ;)) (goto_statement "goto LAB_00016d61;" goto statement_identifier ;) }))) (expression_statement "iVar10 = 3;" (assignment_expression "iVar10 = 3" identifier = number_literal) ;) (expression_statement "iVar8 = 3;" (assignment_expression "iVar8 = 3" identifier = number_literal) ;) (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00017827;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017827;" goto statement_identifier ;)) (labeled_statement "LAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();" statement_identifier : (expression_statement "pcVar20 = (char *)FUN_0001d030();" (assignment_expression "pcVar20 = (char *)FUN_0001d030()" identifier = (cast_expression "(char *)FUN_0001d030()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d030()" identifier (argument_list "()" ( ))))) ;)) (if_statement "if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }" if (parenthesized_expression "(*pcVar20 == '.')" ( (binary_expression "*pcVar20 == '.'" (pointer_expression "*pcVar20" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }" { (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (labeled_statement "LAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;" statement_identifier : (if_statement "if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;" if (parenthesized_expression "((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/'))" ( (binary_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')" (parenthesized_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '\0')" ( (binary_expression "pcVar20[(pcVar20[1] == '.') + 1] == '\0'" (subscript_expression "pcVar20[(pcVar20[1] == '.') + 1]" identifier [ (binary_expression "(pcVar20[1] == '.') + 1" (parenthesized_expression "(pcVar20[1] == '.')" ( (binary_expression "pcVar20[1] == '.'" (subscript_expression "pcVar20[1]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) + number_literal) ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '/')" ( (binary_expression "pcVar20[(pcVar20[1] == '.') + 1] == '/'" (subscript_expression "pcVar20[(pcVar20[1] == '.') + 1]" identifier [ (binary_expression "(pcVar20[1] == '.') + 1" (parenthesized_expression "(pcVar20[1] == '.')" ( (binary_expression "pcVar20[1] == '.'" (subscript_expression "pcVar20[1]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) + number_literal) ]) == (char_literal "'/'" ' character ')) ))) )) (goto_statement "goto LAB_00016d83;" goto statement_identifier ;))) (if_statement "if (bVar3) goto LAB_0001785b;" if (parenthesized_expression "(bVar3)" ( identifier )) (goto_statement "goto LAB_0001785b;" goto statement_identifier ;)) })) (if_statement "if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;" if (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00016da2;" goto statement_identifier ;)) (labeled_statement "LAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }" statement_identifier : (if_statement "if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }" if (parenthesized_expression "(iVar8 != 3)" ( (binary_expression "iVar8 != 3" identifier != number_literal) )) (compound_statement "{\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }\n          }" { (expression_statement "local_230 = (char *)strlen(pcVar20);" (assignment_expression "local_230 = (char *)strlen(pcVar20)" identifier = (cast_expression "(char *)strlen(pcVar20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "strlen(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier ))))) ;) (expression_statement "local_234 = (stat64 *)FUN_0001d030();" (assignment_expression "local_234 = (stat64 *)FUN_0001d030()" identifier = (cast_expression "(stat64 *)FUN_0001d030()" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d030()" identifier (argument_list "()" ( ))))) ;) (expression_statement "sVar16 = strlen((char *)local_234);" (assignment_expression "sVar16 = strlen((char *)local_234)" identifier = (call_expression "strlen((char *)local_234)" identifier (argument_list "((char *)local_234)" ( (cast_expression "(char *)local_234" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_238 = (stat64 *)&DAT_00039770;" (assignment_expression "local_238 = (stat64 *)&DAT_00039770" identifier = (cast_expression "(stat64 *)&DAT_00039770" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00039770" & identifier))) ;) (expression_statement "local_1f4 = DAT_00039770;" (assignment_expression "local_1f4 = DAT_00039770" identifier = identifier) ;) (expression_statement "local_23c = strlen(DAT_00039770);" (assignment_expression "local_23c = strlen(DAT_00039770)" identifier = (call_expression "strlen(DAT_00039770)" identifier (argument_list "(DAT_00039770)" ( identifier )))) ;) (if_statement "if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }" if (parenthesized_expression "(((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0))" ( (binary_expression "((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)" (parenthesized_expression "((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0))" ( (binary_expression "(local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)" (parenthesized_expression "(local_230 == (char *)(local_23c + sVar16))" ( (binary_expression "local_230 == (char *)(local_23c + sVar16)" identifier == (cast_expression "(char *)(local_23c + sVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_23c + sVar16)" ( (binary_expression "local_23c + sVar16" identifier + identifier) )))) )) && (parenthesized_expression "(iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)" ( (comma_expression "iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0" (assignment_expression "iVar10 = memcmp(pcVar20,local_234,sVar16)" identifier = (call_expression "memcmp(pcVar20,local_234,sVar16)" identifier (argument_list "(pcVar20,local_234,sVar16)" ( identifier , identifier , identifier )))) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)" ( (comma_expression "iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0" (assignment_expression "iVar10 = strcmp(pcVar20 + sVar16,local_1f4)" identifier = (call_expression "strcmp(pcVar20 + sVar16,local_1f4)" identifier (argument_list "(pcVar20 + sVar16,local_1f4)" ( (binary_expression "pcVar20 + sVar16" identifier + identifier) , identifier )))) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }\n            }" { (expression_statement "sVar16 = strlen(local_1f8);" (assignment_expression "sVar16 = strlen(local_1f8)" identifier = (call_expression "strlen(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier )))) ;) (expression_statement "pcVar20 = (char *)FUN_00022ed0();" (assignment_expression "pcVar20 = (char *)FUN_00022ed0()" identifier = (cast_expression "(char *)FUN_00022ed0()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_1f4 = *(char **)&local_238->st_dev;" (assignment_expression "local_1f4 = *(char **)&local_238->st_dev" identifier = (pointer_expression "*(char **)&local_238->st_dev" * (cast_expression "(char **)&local_238->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier))))) ;) (expression_statement "pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);" (assignment_expression "pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16)" identifier = (cast_expression "(char *)mempcpy(pcVar20,local_1f8,sVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "mempcpy(pcVar20,local_1f8,sVar16)" identifier (argument_list "(pcVar20,local_1f8,sVar16)" ( identifier , identifier , identifier ))))) ;) (expression_statement "strcpy(pcVar18,local_1f4);" (call_expression "strcpy(pcVar18,local_1f4)" identifier (argument_list "(pcVar18,local_1f4)" ( identifier , identifier ))) ;) (expression_statement "iVar10 = __xstat64(3,pcVar20,&local_94);" (assignment_expression "iVar10 = __xstat64(3,pcVar20,&local_94)" identifier = (call_expression "__xstat64(3,pcVar20,&local_94)" identifier (argument_list "(3,pcVar20,&local_94)" ( number_literal , identifier , (pointer_expression "&local_94" & identifier) )))) ;) (expression_statement "free(pcVar20);" (call_expression "free(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier ))) ;) (if_statement "if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }" if (parenthesized_expression "(((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev))))" ( (binary_expression "((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))" (parenthesized_expression "((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino))" ( (binary_expression "(iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)" ( (binary_expression "local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino" (binary_expression "local_158 == local_94.st_ino._4_4_" identifier == (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "local_15c == (int)local_94.st_ino" identifier == (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)))) ))) )) && (parenthesized_expression "((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))" ( (parenthesized_expression "(local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev))" ( (binary_expression "local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)" (binary_expression "local_1b4._4_4_ == local_94.st_dev._4_4_" (field_expression "local_1b4._4_4_" identifier . field_identifier) == (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier)) && (parenthesized_expression "((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)" ( (binary_expression "(byte *)local_1b4._0_4_ == (byte *)local_94.st_dev" (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)) == (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);\n              }" { (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar11);" statement_identifier : comment (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" identifier (argument_list "(0,0,uVar11)" ( number_literal , number_literal , identifier ))) ;)) })) })) }))) (expression_statement "pcVar20 = (char *)FUN_0001c300();" (assignment_expression "pcVar20 = (char *)FUN_0001c300()" identifier = (cast_expression "(char *)FUN_0001c300()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001c300()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_230 = pcVar20;" (assignment_expression "local_230 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" if (parenthesized_expression "(pcVar20 == (char *)0x0)" ( (binary_expression "pcVar20 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }\n          }" { (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (compound_statement "{\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar14,uVar11);\n            }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,*piVar14,uVar11);" (call_expression "error(0,*piVar14,uVar11)" identifier (argument_list "(0,*piVar14,uVar11)" ( number_literal , (pointer_expression "*piVar14" * identifier) , identifier ))) ;) })) }) (else_clause "else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" else (compound_statement "{\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" { (expression_statement "sVar16 = strlen(pcVar20);" (assignment_expression "sVar16 = strlen(pcVar20)" identifier = (call_expression "strlen(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier )))) ;) (expression_statement "iVar8 = -(sVar16 + 0x1c & 0xfffffff0);" (assignment_expression "iVar8 = -(sVar16 + 0x1c & 0xfffffff0)" identifier = (unary_expression "-(sVar16 + 0x1c & 0xfffffff0)" - (parenthesized_expression "(sVar16 + 0x1c & 0xfffffff0)" ( (binary_expression "sVar16 + 0x1c & 0xfffffff0" (binary_expression "sVar16 + 0x1c" identifier + number_literal) & number_literal) )))) ;) (expression_statement "*(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;" (assignment_expression "*(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1" (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar8)" * (cast_expression "(size_t *)(&stack0xfffffd6c + iVar8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd6c + iVar8)" ( (binary_expression "&stack0xfffffd6c + iVar8" (pointer_expression "&stack0xfffffd6c" & identifier) + identifier) )))) = (binary_expression "sVar16 + 1" identifier + number_literal)) ;) (expression_statement "*(char **)(&stack0xfffffd68 + iVar8) = pcVar20;" (assignment_expression "*(char **)(&stack0xfffffd68 + iVar8) = pcVar20" (pointer_expression "*(char **)(&stack0xfffffd68 + iVar8)" * (cast_expression "(char **)(&stack0xfffffd68 + iVar8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd68 + iVar8)" ( (binary_expression "&stack0xfffffd68 + iVar8" (pointer_expression "&stack0xfffffd68" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;" (assignment_expression "*(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8" (pointer_expression "*(int *)(&stack0xfffffd64 + iVar8)" * (cast_expression "(int *)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) = (binary_expression "(int)&local_280 + iVar8" (cast_expression "(int)&local_280" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_280" & identifier)) + identifier)) ;) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8)" * (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd60 + iVar8)" ( (binary_expression "&stack0xfffffd60 + iVar8" (pointer_expression "&stack0xfffffd60" & identifier) + identifier) )))) = number_literal) ;) (expression_statement "pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));" (assignment_expression "pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" identifier = (cast_expression "(char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" identifier (argument_list "(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" ( (pointer_expression "*(void **)(&stack0xfffffd64 + iVar8)" * (cast_expression "(void **)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) , (pointer_expression "*(void **)(&stack0xfffffd68 + iVar8)" * (cast_expression "(void **)(&stack0xfffffd68 + iVar8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd68 + iVar8)" ( (binary_expression "&stack0xfffffd68 + iVar8" (pointer_expression "&stack0xfffffd68" & identifier) + identifier) )))) , (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar8)" * (cast_expression "(size_t *)(&stack0xfffffd6c + iVar8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd6c + iVar8)" ( (binary_expression "&stack0xfffffd6c + iVar8" (pointer_expression "&stack0xfffffd6c" & identifier) + identifier) )))) ))))) ;) (expression_statement "*(char **)(&stack0xfffffd64 + iVar8) = pcVar20;" (assignment_expression "*(char **)(&stack0xfffffd64 + iVar8) = pcVar20" (pointer_expression "*(char **)(&stack0xfffffd64 + iVar8)" * (cast_expression "(char **)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) = identifier) ;) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8)" * (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd60 + iVar8)" ( (binary_expression "&stack0xfffffd60 + iVar8" (pointer_expression "&stack0xfffffd60" & identifier) + identifier) )))) = number_literal) ;) (expression_statement "free(*(void **)(&stack0xfffffd64 + iVar8));" (call_expression "free(*(void **)(&stack0xfffffd64 + iVar8))" identifier (argument_list "(*(void **)(&stack0xfffffd64 + iVar8))" ( (pointer_expression "*(void **)(&stack0xfffffd64 + iVar8)" * (cast_expression "(void **)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) ))) ;) (expression_statement "local_230 = pcVar18;" (assignment_expression "local_230 = pcVar18" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "puVar34 = auStack_28c + iVar8;" (assignment_expression "puVar34 = auStack_28c + iVar8" identifier = (binary_expression "auStack_28c + iVar8" identifier + identifier)) ;) }))) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) (if_statement "if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" if (parenthesized_expression "(uVar9 != 0x4000)" ( (binary_expression "uVar9 != 0x4000" identifier != number_literal) )) (compound_statement "{\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" { (labeled_statement "LAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }" statement_identifier : (if_statement "if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }" if (parenthesized_expression "(((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0))" ( (binary_expression "((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)" (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar10 = *local_1f0, iVar10 == 0)" ( (comma_expression "iVar10 = *local_1f0, iVar10 == 0" (assignment_expression "iVar10 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar11);\n          }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" identifier (argument_list "(0,0,uVar11)" ( number_literal , number_literal , identifier ))) ;) }))) (labeled_statement "LAB_00017827:\n          iVar8 = iVar10;" statement_identifier : (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" identifier = identifier) ;)) (if_statement "if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }" if (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }" { (labeled_statement "LAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" statement_identifier : (if_statement "if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" if (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00018756;" goto statement_identifier ;))) (if_statement "if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }" { (expression_statement "FUN_00020700();" (call_expression "FUN_00020700()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00020700();" (call_expression "FUN_00020700()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) })) (labeled_statement "LAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();" statement_identifier : (expression_statement "pcVar20 = (char *)FUN_0001d030();" (assignment_expression "pcVar20 = (char *)FUN_0001d030()" identifier = (cast_expression "(char *)FUN_0001d030()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d030()" identifier (argument_list "()" ( ))))) ;)) (if_statement "if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }" if (parenthesized_expression "(*pcVar20 == '.')" ( (binary_expression "*pcVar20 == '.'" (pointer_expression "*pcVar20" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }" { (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (goto_statement "goto LAB_00018ca5;" goto statement_identifier ;) })) (goto_statement "goto LAB_0001785b;" goto statement_identifier ;) })) (labeled_statement "LAB_00016d61:\n        iVar8 = *local_1f0;" statement_identifier : (expression_statement "iVar8 = *local_1f0;" (assignment_expression "iVar8 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) ;)) (labeled_statement "LAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" statement_identifier : (if_statement "if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" { (if_statement "if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;" if (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0001892a;" goto statement_identifier ;)) (labeled_statement "LAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;" statement_identifier : (if_statement "if (iVar8 != 0) goto LAB_0001783f;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001783f;" goto statement_identifier ;))) (labeled_statement "LAB_00016da2:\n          uVar38 = local_230._0_1_;" statement_identifier : (expression_statement "uVar38 = local_230._0_1_;" (assignment_expression "uVar38 = local_230._0_1_" identifier = (field_expression "local_230._0_1_" identifier . field_identifier)) ;)) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar38)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,uVar38)" identifier (argument_list "(local_1f4._1_3_,uVar38)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) }))) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (if_statement "if (iVar8 != 0) goto LAB_00018700;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00018700;" goto statement_identifier ;)) (labeled_statement "LAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;" statement_identifier : (if_statement "if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;" if (parenthesized_expression "(((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))))))" ( (binary_expression "((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))" (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000 || bVar3)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000 || bVar3" (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) || identifier) )) || (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))" ( (parenthesized_expression "((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2))))" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))" (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))" ( (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2))" ( (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)" (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" * (cast_expression "(char *)((int)local_1f0 + 0x22)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x22)" ( (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(local_154.st_nlink < 2)" ( (binary_expression "local_154.st_nlink < 2" (field_expression "local_154.st_nlink" identifier . field_identifier) < number_literal) ))) )) ))) )) && (parenthesized_expression "((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))" ( (parenthesized_expression "(local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))" ( (binary_expression "local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)" (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) || (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x8000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x8000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) ))) )) ))) )) (goto_statement "goto LAB_00016da2;" goto statement_identifier ;))) (expression_statement "iVar10 = unlink(local_1f8);" (assignment_expression "iVar10 = unlink(local_1f8)" identifier = (call_expression "unlink(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier )))) ;) (if_statement "if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }" if (parenthesized_expression "((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2))" ( (binary_expression "(iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)" (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) && (parenthesized_expression "(piVar14 = __errno_location(), *piVar14 != 2)" ( (comma_expression "piVar14 = __errno_location(), *piVar14 != 2" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) , (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal)) ))) )) (compound_statement "{\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*local_1f0,uVar11);\n        }" { (expression_statement "local_1f0 = piVar14;" (assignment_expression "local_1f0 = piVar14" identifier = identifier) ;) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,*local_1f0,uVar11);" (call_expression "error(0,*local_1f0,uVar11)" identifier (argument_list "(0,*local_1f0,uVar11)" ( number_literal , (pointer_expression "*local_1f0" * identifier) , identifier ))) ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" { (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) (if_statement "if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }" { (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_230 = (char *)local_1f0[0xf];" (assignment_expression "local_230 = (char *)local_1f0[0xf]" identifier = (cast_expression "(char *)local_1f0[0xf]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_1f0[0xf]" identifier [ number_literal ]))) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(byte)local_1fc)" identifier (argument_list "(local_1f4._1_3_,(byte)local_1fc)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) ;) (if_statement "if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;" if (parenthesized_expression "((char *)local_1f0[0xf] == (char *)0x0)" ( (binary_expression "(char *)local_1f0[0xf] == (char *)0x0" (cast_expression "(char *)local_1f0[0xf]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_1f0[0xf]" identifier [ number_literal ])) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00016356;" goto statement_identifier ;)) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (goto_statement "goto LAB_00016277;" goto statement_identifier ;) })) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016356;" goto statement_identifier ;) })) (labeled_statement "LAB_00016570:\n      puVar29 = puVar34;" statement_identifier : (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" identifier = identifier) ;)) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) }))) (if_statement "if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" if (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" { (if_statement "if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016cbd;" goto statement_identifier ;)) (labeled_statement "LAB_00017420:\n      iVar10 = local_1f0[2];" statement_identifier : (expression_statement "iVar10 = local_1f0[2];" (assignment_expression "iVar10 = local_1f0[2]" identifier = (subscript_expression "local_1f0[2]" identifier [ number_literal ])) ;)) (if_statement "if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;" if (parenthesized_expression "((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))" ( (binary_expression "(iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')))" (parenthesized_expression "(iVar10 != 2)" ( (binary_expression "iVar10 != 2" identifier != number_literal) )) && (parenthesized_expression "(((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')))" ( (parenthesized_expression "((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))" ( (binary_expression "(iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')" (parenthesized_expression "(iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0'))))" ( (binary_expression "iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))" (binary_expression "iVar10 != 3" identifier != number_literal) && (parenthesized_expression "(((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))" ( (parenthesized_expression "((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0'))" ( (binary_expression "(iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')" (parenthesized_expression "(iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0'))" ( (binary_expression "iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')" (binary_expression "iVar10 != 4" identifier != number_literal) || (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2f) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2f) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2f)" * (cast_expression "(char *)((int)local_1f0 + 0x2f)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2f)" ( (binary_expression "(int)local_1f0 + 0x2f" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(cVar6 = FUN_00014980(), cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_00014980(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014980()" identifier = (call_expression "FUN_00014980()" identifier (argument_list "()" ( )))) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) ))) )) || (parenthesized_expression "(cVar6 = FUN_00014de0(), cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_00014de0(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014de0()" identifier = (call_expression "FUN_00014de0()" identifier (argument_list "()" ( )))) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) ))) )) (goto_statement "goto LAB_00016cbd;" goto statement_identifier ;)) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) })) (goto_statement "goto LAB_00016570;" goto statement_identifier ;) })) (expression_statement "iVar10 = FUN_00021ee0();" (assignment_expression "iVar10 = FUN_00021ee0()" identifier = (call_expression "FUN_00021ee0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" { (if_statement "if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016ca2;" goto statement_identifier ;)) (goto_statement "goto LAB_00017420;" goto statement_identifier ;) })) (if_statement "if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_208 = 1;\n    }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) })) (expression_statement "iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);" (assignment_expression "iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158)" identifier = (call_expression "FUN_0001a5c0(local_1f8,local_15c,local_158)" identifier (argument_list "(local_1f8,local_15c,local_158)" ( identifier , identifier , identifier )))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;" if (parenthesized_expression "((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))" ( (binary_expression "(iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0')" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) || (parenthesized_expression "(cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014f10()" identifier = (call_expression "FUN_00014f10()" identifier (argument_list "()" ( )))) , (comma_expression "puVar34 = auStack_28c, cVar6 != '\0'" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')))) ))) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }" { (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) })) (goto_statement "goto LAB_00016148;" goto statement_identifier ;) })) (expression_statement "local_214 = (byte **)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (byte **)((uint)local_214._1_3_ << 8)" identifier = (cast_expression "(byte **)((uint)local_214._1_3_ << 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((uint)local_214._1_3_ << 8)" ( (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_214._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00016259:\n  puVar32 = puVar34;" statement_identifier : (expression_statement "puVar32 = puVar34;" (assignment_expression "puVar32 = puVar34" identifier = identifier) ;)) (if_statement "if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" if (parenthesized_expression "(((byte)local_1fc == '\0') || (local_1f0[0xf] == 0))" ( (binary_expression "((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)" (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_1f0[0xf] == 0)" ( (binary_expression "local_1f0[0xf] == 0" (subscript_expression "local_1f0[0xf]" identifier [ number_literal ]) == number_literal) ))) )) (compound_statement "{\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }" { (labeled_statement "LAB_00016338:\n    puVar29 = puVar32;" statement_identifier : (expression_statement "puVar29 = puVar32;" (assignment_expression "puVar29 = puVar32" identifier = identifier) ;)) (if_statement "if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }" { (labeled_statement "LAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" statement_identifier : (if_statement "if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" if (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x16b45;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x16b45" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) }))) })) (if_statement "if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }" { (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00016524;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016524;" goto statement_identifier ;)) (goto_statement "goto LAB_000165a0;" goto statement_identifier ;) })) (labeled_statement "LAB_00016356:\n    uVar9 = local_158;" statement_identifier : (expression_statement "uVar9 = local_158;" (assignment_expression "uVar9 = local_158" identifier = identifier) ;)) (expression_statement "iVar8 = local_15c;" (assignment_expression "iVar8 = local_15c" identifier = identifier) ;) (if_statement "if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2a) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2a) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2a)" * (cast_expression "(char *)((int)local_1f0 + 0x2a)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2a)" ( (binary_expression "(int)local_1f0 + 0x2a" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }" { (expression_statement "local_214 = (byte **)local_1b4._0_4_;" (assignment_expression "local_214 = (byte **)local_1b4._0_4_" identifier = (cast_expression "(byte **)local_1b4._0_4_" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_210 = local_1b4._4_4_;" (assignment_expression "local_210 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (if_statement "if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" if (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(byte ***)(puVar29 + -8) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -8) = local_214" (pointer_expression "*(byte ***)(puVar29 + -8)" * (cast_expression "(byte ***)(puVar29 + -8)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = iVar8;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar8" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x163c0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x163c0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a550();" (assignment_expression "local_214 = (byte **)FUN_0001a550()" identifier = (cast_expression "(byte **)FUN_0001a550()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a550()" identifier (argument_list "()" ( ))))) ;) }) (else_clause "else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" else (compound_statement "{\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" { (expression_statement "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(byte ***)(puVar29 + -0x14) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0x14) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0x14)" * (cast_expression "(byte ***)(puVar29 + -0x14)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x18) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar8;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar8" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x176f4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x176f4" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a5c0();" (assignment_expression "local_214 = (byte **)FUN_0001a5c0()" identifier = (cast_expression "(byte **)FUN_0001a5c0()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a5c0()" identifier (argument_list "()" ( ))))) ;) }))) (if_statement "if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }" if (parenthesized_expression "(local_214 != (byte **)0x0)" ( (binary_expression "local_214 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }" { (labeled_statement "LAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;" statement_identifier : (expression_statement "*(byte ***)(puVar29 + -0xc) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0xc) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0xc)" * (cast_expression "(byte ***)(puVar29 + -0xc)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x163e7;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x163e7" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039764;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039764" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b02;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b02" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b16;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b16" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot copy a directory, %s, into itself, %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b2b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b2b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018b39;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018b39" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018b39" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(byte ***)(puVar29 + -0xc) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0xc) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0xc)" * (cast_expression "(byte ***)(puVar29 + -0xc)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16406;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16406" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -0xc) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18eee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18eee" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";" (assignment_expression "*(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""warning: source directory %s specified more than once"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018f0e" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018f0e" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }" if (parenthesized_expression "((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0'))))" ( (binary_expression "(local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))" (parenthesized_expression "(local_1f0[1] != 4)" ( (binary_expression "local_1f0[1] != 4" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))" ( (parenthesized_expression "(local_1f0[1] != 3 || ((byte)local_1fc == '\0'))" ( (binary_expression "local_1f0[1] != 3 || ((byte)local_1fc == '\0')" (binary_expression "local_1f0[1] != 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) || (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }" { (expression_statement "*(byte ***)(puVar29 + -8) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -8) = local_214" (pointer_expression "*(byte ***)(puVar29 + -8)" * (cast_expression "(byte ***)(puVar29 + -8)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d3f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d3f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d53;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d53" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""will not create hard link %s to directory %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d68;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d68" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018d76;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018d76" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018d76" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (labeled_statement "LAB_00016438:\n      cVar6 = (char)local_1f0[6];" statement_identifier : (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;)) (labeled_statement "LAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" statement_identifier : (if_statement "if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }" { (labeled_statement "LAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" statement_identifier : (expression_statement "local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (assignment_expression "local_208 = (undefined1 *)((uint)local_1f4 & 0xff)" identifier = (cast_expression "(undefined1 *)((uint)local_1f4 & 0xff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xff)" ( (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) }) (else_clause "else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" else (compound_statement "{\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" { (labeled_statement "LAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" statement_identifier : (if_statement "if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" if (parenthesized_expression "(iVar10 == 0x11)" ( (binary_expression "iVar10 == 0x11" identifier == number_literal) )) (compound_statement "{\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x174bc;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x174bc" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier = (call_expression "rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x174cc;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x174cc" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = *piVar14;" (assignment_expression "iVar10 = *piVar14" identifier = (pointer_expression "*piVar14" * identifier)) ;) (if_statement "if (iVar10 != 0) goto LAB_0001649e;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001649e;" goto statement_identifier ;)) })) (labeled_statement "LAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "renamed ";" (assignment_expression "*(char **)(puVar29 + -0xc) = "renamed "" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""renamed "" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18223;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18223" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1822d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1822d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18244;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18244" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18208;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18208" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00015960();" (call_expression "FUN_00015960()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            *local_208 = 1;\n          }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) })) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" identifier = identifier) ;) (if_statement "if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }" if (parenthesized_expression "(((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0'))" ( (binary_expression "((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')" (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x31) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x31) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x31)" * (cast_expression "(char *)((int)local_1f0 + 0x31)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x31)" ( (binary_expression "(int)local_1f0 + 0x31" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }" { (expression_statement "*(undefined1 **)(puVar29 + -8) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar29 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (subscript_expression "piVar14[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17ab6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17ab6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar9 = local_1fc & 0xff;" (assignment_expression "uVar9 = local_1fc & 0xff" identifier = (binary_expression "local_1fc & 0xff" identifier & number_literal)) ;) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) })) (goto_statement "goto LAB_00016570;" goto statement_identifier ;) }))) (labeled_statement "LAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" statement_identifier : (if_statement "if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" if (parenthesized_expression "(iVar10 == 0x16)" ( (binary_expression "iVar10 == 0x16" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039764;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039764" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185ca;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185ca" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185de;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185de" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot move %s to a subdirectory of itself, %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185f3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185f3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018606;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018606" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018606" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) }))) (if_statement "if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }" if (parenthesized_expression "(iVar10 != 0x12)" ( (binary_expression "iVar10 != 0x12" identifier != number_literal) )) (compound_statement "{\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }" { (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180a2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180a2" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f0 = (int *)uVar11;" (assignment_expression "local_1f0 = (int *)uVar11" identifier = (cast_expression "(int *)uVar11" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180ba;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180ba" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot move %s to %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot move %s to %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot move %s to %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180cf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180cf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_00017594;" goto statement_identifier ;) })) (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" if (parenthesized_expression "(uVar9 == 0x4000)" ( (binary_expression "uVar9 == 0x4000" identifier == number_literal) )) (compound_statement "{\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }" { (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1825e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1825e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = rmdir(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = rmdir(*(char **)(puVar29 + -0x10))" identifier = (call_expression "rmdir(*(char **)(puVar29 + -0x10))" identifier (argument_list "(*(char **)(puVar29 + -0x10))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1826e;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1826e" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 != 2) goto LAB_00017548;" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (goto_statement "goto LAB_00017548;" goto statement_identifier ;)) })) }) (else_clause "else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" else (compound_statement "{\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" { (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x164d6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x164d6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = unlink(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = unlink(*(char **)(puVar29 + -0x10))" identifier = (call_expression "unlink(*(char **)(puVar29 + -0x10))" identifier (argument_list "(*(char **)(puVar29 + -0x10))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1753d;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1753d" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (compound_statement "{\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }" { (labeled_statement "LAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;" statement_identifier : (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1755a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1755a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f0 = (int *)uVar11;" (assignment_expression "local_1f0 = (int *)uVar11" identifier = (cast_expression "(int *)uVar11" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17572;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17572" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";" (assignment_expression "*(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""inter-device move failed: %s to %s; unable to remove target"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17587;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17587" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (labeled_statement "LAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;)) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001759b;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001759b" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001759b" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (expression_statement "bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);" (assignment_expression "bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e)" identifier = (binary_expression "uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e)" (binary_expression "uVar9 != 0x4000" identifier != number_literal) & (pointer_expression "*(byte *)((int)local_1f0 + 0x2e)" * (cast_expression "(byte *)((int)local_1f0 + 0x2e)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,bVar25)" identifier (argument_list "(local_1f4._1_3_,bVar25)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }" if (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "copied ";" (assignment_expression "*(char **)(puVar29 + -0xc) = "copied "" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""copied "" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a23;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a23" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a2d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a2d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a44;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a44" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_208 = (undefined1 *)0x1;" (assignment_expression "local_208 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000165b7;" goto statement_identifier ;) })) }))) (expression_statement "local_208 = (undefined1 *)0x1;" (assignment_expression "local_208 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) })))) (goto_statement "goto LAB_000165b7;" goto statement_identifier ;) })) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;) (if_statement "if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }" { (if_statement "if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" * (cast_expression "(char *)((int)local_1f0 + 0x22)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x22)" ( (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000165a0;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016ac0;" goto statement_identifier ;)) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (goto_statement "goto LAB_00016b03;" goto statement_identifier ;) })) (if_statement "if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }" if (parenthesized_expression "(local_1b4._20_4_ != 1)" ( (binary_expression "local_1b4._20_4_ != 1" (field_expression "local_1b4._20_4_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }" { (if_statement "if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x22) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" * (cast_expression "(char *)((int)local_1f0 + 0x22)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x22)" ( (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }" { (labeled_statement "LAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" statement_identifier : (if_statement "if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" if (parenthesized_expression "((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4))))" ( (binary_expression "(1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))" (parenthesized_expression "(1 < (uint)local_1b4._20_4_)" ( (binary_expression "1 < (uint)local_1b4._20_4_" number_literal < (cast_expression "(uint)local_1b4._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_1b4._20_4_" identifier . field_identifier))) )) || (parenthesized_expression "((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))" ( (parenthesized_expression "(((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4))" ( (binary_expression "((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)" (parenthesized_expression "((byte)local_1fc != '\0' && (local_1f0[1] == 3))" ( (binary_expression "(byte)local_1fc != '\0' && (local_1f0[1] == 3)" (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(local_1f0[1] == 3)" ( (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) ))) )) || (parenthesized_expression "(local_214 = (byte **)0x0, local_1f0[1] == 4)" ( (comma_expression "local_214 = (byte **)0x0, local_1f0[1] == 4" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) , (binary_expression "local_1f0[1] == 4" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal)) ))) )) ))) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_158" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x1c) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1772e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1772e" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a5c0();" (assignment_expression "local_214 = (byte **)FUN_0001a5c0()" identifier = (cast_expression "(byte **)FUN_0001a5c0()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a5c0()" identifier (argument_list "()" ( ))))) ;) (goto_statement "goto LAB_00017737;" goto statement_identifier ;) }))) (goto_statement "goto LAB_00016afb;" goto statement_identifier ;) })) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (goto_statement "goto LAB_00016495;" goto statement_identifier ;) })) (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_158" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1834d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1834d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a550();" (assignment_expression "local_214 = (byte **)FUN_0001a550()" identifier = (cast_expression "(byte **)FUN_0001a550()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a550()" identifier (argument_list "()" ( ))))) ;) (labeled_statement "LAB_00017737:\n    piVar14 = local_1f0;" statement_identifier : (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;)) (if_statement "if (local_214 == (byte **)0x0) goto LAB_00016438;" if (parenthesized_expression "(local_214 == (byte **)0x0)" ( (binary_expression "local_214 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (goto_statement "goto LAB_00016438;" goto statement_identifier ;)) (if_statement "if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;" if (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_000163d3;" goto statement_identifier ;)) (expression_statement "*(byte **)(puVar29 + -0xc) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0xc) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0xc)" * (cast_expression "(byte **)(puVar29 + -0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);" (assignment_expression "*(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e)" (pointer_expression "*(uint *)(puVar29 + -0x10)" * (cast_expression "(uint *)(puVar29 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "(uint)*(byte *)((int)piVar14 + 0x2e)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)((int)piVar14 + 0x2e)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x2e)" ( (binary_expression "(int)piVar14 + 0x2e" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17785;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17785" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00014f10();" (assignment_expression "cVar6 = FUN_00014f10()" identifier = (call_expression "FUN_00014f10()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" identifier = identifier) ;) (if_statement "if (cVar6 != '\0') goto LAB_00016570;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000177a0;" goto statement_identifier ;)) (labeled_statement "LAB_00016fcb:\n    pcVar20 = local_230;" statement_identifier : (expression_statement "pcVar20 = local_230;" (assignment_expression "pcVar20 = local_230" identifier = identifier) ;)) (if_statement "if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }" if (parenthesized_expression "(local_230 != (char *)0x0)" ( (binary_expression "local_230 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16fe8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16fe8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier = (call_expression "rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x182f0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x182f0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar31 = puVar29 + -8;" (assignment_expression "puVar31 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = ppuVar28 + -0x2be3;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2be3" identifier = (binary_expression "ppuVar28 + -0x2be3" identifier + number_literal)) ;) (goto_statement "goto LAB_00016222;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }" { (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17015;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17015" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_230;" (assignment_expression "*(char **)(puVar29 + -8) = local_230" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17029;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17029" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" * (cast_expression "(undefined ***)(puVar29 + -0xc)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "ppuVar28 + -0x2bde" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1703e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1703e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x17048;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x17048" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) })) })) }) (else_clause "else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" else (compound_statement "{\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" { (labeled_statement "LAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;" statement_identifier : (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00016338;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016338;" goto statement_identifier ;))) (if_statement "if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }" if (parenthesized_expression "(*local_1f0 == 0)" ( (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" * identifier) == number_literal) )) (compound_statement "{\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }" { (expression_statement "ppbVar17 = (byte **)&local_154;" (assignment_expression "ppbVar17 = (byte **)&local_154" identifier = (cast_expression "(byte **)&local_154" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_154" & identifier))) ;) (if_statement "if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }" if (parenthesized_expression "((char)local_214 == '\0')" ( (binary_expression "(char)local_214 == '\0'" (cast_expression "(char)local_214" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }" { (expression_statement "*(stat64 **)(puVar32 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar32 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar32 + -8)" * (cast_expression "(stat64 **)(puVar32 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar32 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)&local_94;" (assignment_expression "local_214 = (byte **)&local_94" identifier = (cast_expression "(byte **)&local_94" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_94" & identifier))) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x17a7d;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x17a7d" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));" (assignment_expression "iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" identifier (argument_list "(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" ( (pointer_expression "*(int *)(puVar32 + -0x10)" * (cast_expression "(int *)(puVar32 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar32 + -8)" * (cast_expression "(stat64 **)(puVar32 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "ppbVar17 = local_214;" (assignment_expression "ppbVar17 = local_214" identifier = identifier) ;) (if_statement "if (iVar8 != 0) goto LAB_00016338;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016338;" goto statement_identifier ;)) })) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }" if (parenthesized_expression "(((uint)ppbVar17[4] & 0xf000) == 0xa000)" ( (binary_expression "((uint)ppbVar17[4] & 0xf000) == 0xa000" (parenthesized_expression "((uint)ppbVar17[4] & 0xf000)" ( (binary_expression "(uint)ppbVar17[4] & 0xf000" (cast_expression "(uint)ppbVar17[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "ppbVar17[4]" identifier [ number_literal ])) & number_literal) )) == number_literal) )) (compound_statement "{\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }" { (expression_statement "*(byte ***)(puVar32 + -8) = ppbVar17;" (assignment_expression "*(byte ***)(puVar32 + -8) = ppbVar17" (pointer_expression "*(byte ***)(puVar32 + -8)" * (cast_expression "(byte ***)(puVar32 + -8)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar32 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar32 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar32 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar32 + -0x10)" * (cast_expression "(int *)(puVar32 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = (subscript_expression "piVar14[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x162d3;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x162d3" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_0001d250();" (assignment_expression "cVar6 = FUN_0001d250()" identifier = (call_expression "FUN_0001d250()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }" { (expression_statement "*(char **)(puVar32 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -8) = local_1f8" (pointer_expression "*(char **)(puVar32 + -8)" * (cast_expression "(char **)(puVar32 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar32 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar32 + -0xc)" * (cast_expression "(undefined4 *)(puVar32 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x162ec;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x162ec" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar32 + -8) = local_200;" (assignment_expression "*(char **)(puVar32 + -8) = local_200" (pointer_expression "*(char **)(puVar32 + -8)" * (cast_expression "(char **)(puVar32 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar32 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar32 + -0xc)" * (cast_expression "(undefined4 *)(puVar32 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x16300;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x16300" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f0 = (int *)FUN_000203c0();" (assignment_expression "local_1f0 = (int *)FUN_000203c0()" identifier = (cast_expression "(int *)FUN_000203c0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar32 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar32 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar32 + -8)" * (cast_expression "(undefined4 *)(puVar32 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";" (assignment_expression "*(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s"" (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = (string_literal ""will not copy %s through just-created symlink %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x16319;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x16319" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar32 + -0x14) = piVar14;" (assignment_expression "*(int **)(puVar32 + -0x14) = piVar14" (pointer_expression "*(int **)(puVar32 + -0x14)" * (cast_expression "(int **)(puVar32 + -0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar32 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar32 + -0x18)" * (cast_expression "(undefined4 *)(puVar32 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x18)" ( (binary_expression "puVar32 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x1c)" * (cast_expression "(undefined4 *)(puVar32 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x1c)" ( (binary_expression "puVar32 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x20)" * (cast_expression "(undefined4 *)(puVar32 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x20)" ( (binary_expression "puVar32 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar32 + -0x24) = &UNK_0001632d;" (assignment_expression "*(undefined **)(puVar32 + -0x24) = &UNK_0001632d" (pointer_expression "*(undefined **)(puVar32 + -0x24)" * (cast_expression "(undefined **)(puVar32 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0x24)" ( (binary_expression "puVar32 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001632d" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (goto_statement "goto LAB_00016338;" goto statement_identifier ;) })) (expression_statement "puVar29 = puVar32;" (assignment_expression "puVar29 = puVar32" identifier = identifier) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016b18;" goto statement_identifier ;)) (if_statement "if (iVar10 != 0) goto LAB_00016356;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016356;" goto statement_identifier ;)) (labeled_statement "LAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" statement_identifier : (expression_statement "local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (assignment_expression "local_208 = (undefined1 *)((uint)local_1f4 & 0xff)" identifier = (cast_expression "(undefined1 *)((uint)local_1f4 & 0xff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xff)" ( (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (labeled_statement "LAB_000165b7:\n    uVar9 = local_204;" statement_identifier : (expression_statement "uVar9 = local_204;" (assignment_expression "uVar9 = local_204" identifier = identifier) ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2b) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" * (cast_expression "(char *)((int)local_1f0 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2b)" ( (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar9 = local_1f0[4];\n    }" { (expression_statement "uVar9 = local_1f0[4];" (assignment_expression "uVar9 = local_1f0[4]" identifier = (subscript_expression "local_1f0[4]" identifier [ number_literal ])) ;) })) (expression_statement "local_234 = (stat64 *)(uVar9 & 0xfff);" (assignment_expression "local_234 = (stat64 *)(uVar9 & 0xfff)" identifier = (cast_expression "(stat64 *)(uVar9 & 0xfff)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar9 & 0xfff)" ( (binary_expression "uVar9 & 0xfff" identifier & number_literal) )))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1d) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" * (cast_expression "(char *)((int)local_1f0 + 0x1d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }" { (expression_statement "local_238 = (stat64 *)(local_204 & 0xf000);" (assignment_expression "local_238 = (stat64 *)(local_204 & 0xf000)" identifier = (cast_expression "(stat64 *)(local_204 & 0xf000)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )))) ;) (if_statement "if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" if (parenthesized_expression "(local_238 == (stat64 *)0x4000)" ( (binary_expression "local_238 == (stat64 *)0x4000" identifier == (cast_expression "(stat64 *)0x4000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" * (cast_expression "(undefined1 **)(puVar29 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16dee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16dee" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }" { (expression_statement "local_23c = (uint)local_234 & 0x12;" (assignment_expression "local_23c = (uint)local_234 & 0x12" identifier = (binary_expression "(uint)local_234 & 0x12" (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (goto_statement "goto LAB_00016e08;" goto statement_identifier ;) })) }) (else_clause "else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" else (compound_statement "{\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" * (cast_expression "(undefined1 **)(puVar29 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16a82;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16a82" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_23c = 0;" (assignment_expression "local_23c = 0" identifier = number_literal) ;) (if_statement "if (cVar6 != '\0') goto LAB_0001664e;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001664e;" goto statement_identifier ;)) }))) }) (else_clause "else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" else (compound_statement "{\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" * (cast_expression "(undefined1 **)(puVar29 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16618;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16618" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }" { (expression_statement "local_23c = (uint)local_234 & 0x3f;" (assignment_expression "local_23c = (uint)local_234 & 0x3f" identifier = (binary_expression "(uint)local_234 & 0x3f" (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "local_238 = (stat64 *)(local_204 & 0xf000);" (assignment_expression "local_238 = (stat64 *)(local_204 & 0xf000)" identifier = (cast_expression "(stat64 *)(local_204 & 0xf000)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )))) ;) (if_statement "if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" if (parenthesized_expression "((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000)" ( (binary_expression "(stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000" (cast_expression "(stat64 *)(local_204 & 0xf000)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) ))) == (cast_expression "(stat64 *)0x4000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }" { (labeled_statement "LAB_00016e08:\n          piVar14 = local_1f0;" statement_identifier : (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;)) (if_statement "if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" if (parenthesized_expression "(local_228 == (int *)0x0)" ( (binary_expression "local_228 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }" { (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" identifier = (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) }) (else_clause "else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" else (compound_statement "{\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" { (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" identifier = (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "piVar23 = local_228;" (assignment_expression "piVar23 = local_228" identifier = identifier) ;) (do_statement "do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);" do (compound_statement "{\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            }" { (if_statement "if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }" if (parenthesized_expression "((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3]))" ( (binary_expression "(piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])" (parenthesized_expression "(piVar23[2] == local_158 && piVar23[1] == local_15c)" ( (binary_expression "piVar23[2] == local_158 && piVar23[1] == local_15c" (binary_expression "piVar23[2] == local_158" (subscript_expression "piVar23[2]" identifier [ number_literal ]) == identifier) && (binary_expression "piVar23[1] == local_15c" (subscript_expression "piVar23[1]" identifier [ number_literal ]) == identifier)) )) && (parenthesized_expression "(local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])" ( (binary_expression "local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3]" (binary_expression "local_1b4._4_4_ == piVar23[4]" (field_expression "local_1b4._4_4_" identifier . field_identifier) == (subscript_expression "piVar23[4]" identifier [ number_literal ])) && (binary_expression "(byte *)local_1b4._0_4_ == (byte *)piVar23[3]" (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)) == (cast_expression "(byte *)piVar23[3]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar23[3]" identifier [ number_literal ])))) ))) )) (compound_statement "{\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16e7e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16e7e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot copy cyclic symbolic link %s";" (assignment_expression "pcVar20 = "cannot copy cyclic symbolic link %s"" identifier = (string_literal ""cannot copy cyclic symbolic link %s"" " string_content ")) ;) (goto_statement "goto LAB_00016e8b;" goto statement_identifier ;) })) (expression_statement "piVar23 = (int *)*piVar23;" (assignment_expression "piVar23 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) }) while (parenthesized_expression "(piVar23 != (int *)0x0)" ( (binary_expression "piVar23 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) }))) (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" identifier = (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);" (assignment_expression "local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0)" identifier = (cast_expression "(stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar29 + -0x11) & 0xfffffff0)" ( (binary_expression "(uint)(puVar29 + -0x11) & 0xfffffff0" (call_expression "(uint)(puVar29 + -0x11)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar29 + -0x11)" ( (binary_expression "puVar29 + -0x11" identifier + number_literal) ))) & number_literal) )))) ;) (expression_statement "local_238->__pad1 = local_158;" (assignment_expression "local_238->__pad1 = local_158" (field_expression "local_238->__pad1" identifier -> field_identifier) = identifier) ;) (expression_statement "local_238->__st_ino = local_1b4._0_4_;" (assignment_expression "local_238->__st_ino = local_1b4._0_4_" (field_expression "local_238->__st_ino" identifier -> field_identifier) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(int **)&local_238->st_dev = local_228;" (assignment_expression "*(int **)&local_238->st_dev = local_228" (pointer_expression "*(int **)&local_238->st_dev" * (cast_expression "(int **)&local_238->st_dev" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier)))) = identifier) ;) (expression_statement "*(int *)((int)&local_238->st_dev + 4) = local_15c;" (assignment_expression "*(int *)((int)&local_238->st_dev + 4) = local_15c" (pointer_expression "*(int *)((int)&local_238->st_dev + 4)" * (cast_expression "(int *)((int)&local_238->st_dev + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_238->st_dev + 4)" ( (binary_expression "(int)&local_238->st_dev + 4" (cast_expression "(int)&local_238->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "local_238->st_mode = local_1b4._4_4_;" (assignment_expression "local_238->st_mode = local_1b4._4_4_" (field_expression "local_238->st_mode" identifier -> field_identifier) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (if_statement "if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" if (parenthesized_expression "(((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000))" ( (binary_expression "((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }" { (if_statement "if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }" { (expression_statement "bVar25 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar25 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (bVar25 != 0) goto LAB_0001889e;" if (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001889e;" goto statement_identifier ;)) }) (else_clause "else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" else (compound_statement "{\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" { (expression_statement "bVar25 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar25 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (labeled_statement "LAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;" statement_identifier : (expression_statement "*(int **)(puVar29 + -0x24) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x24) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x24)" * (cast_expression "(int **)(puVar29 + -0x24)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0x2c) = (uint)bVar25;" (assignment_expression "*(uint *)(puVar29 + -0x2c) = (uint)bVar25" (pointer_expression "*(uint *)(puVar29 + -0x2c)" * (cast_expression "(uint *)(puVar29 + -0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x188b3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x188b3" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00015960();" (assignment_expression "cVar6 = FUN_00015960()" identifier = (call_expression "FUN_00015960()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;" if (parenthesized_expression "((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))" ( (binary_expression "(cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0')" (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0')" ( (comma_expression "puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'" (assignment_expression "puVar34 = puVar29 + -0x20" identifier = (binary_expression "puVar29 + -0x20" identifier + number_literal)) , (binary_expression "*(char *)((int)piVar14 + 0x26) != '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x26)" * (cast_expression "(char *)((int)piVar14 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x26)" ( (binary_expression "(int)piVar14 + 0x26" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence '))) ))) )) (goto_statement "goto LAB_00016fad;" goto statement_identifier ;)) }))) (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" identifier = (binary_expression "local_24c & 0xffffff00" identifier & number_literal)) ;) (expression_statement "local_23c = 0;" (assignment_expression "local_23c = 0" identifier = number_literal) ;) }) (else_clause "else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" else (compound_statement "{\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" { (expression_statement "*(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;" (assignment_expression "*(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234" (pointer_expression "*(uint *)(puVar29 + -0x2c)" * (cast_expression "(uint *)(puVar29 + -0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (binary_expression "~local_23c & (uint)local_234" (unary_expression "~local_23c" ~ identifier) & (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17154;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17154" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));" (assignment_expression "iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier = (call_expression "mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier (argument_list "(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" ( (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" * (cast_expression "(__mode_t *)(puVar29 + -0x2c)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 100000;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 100000" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" identifier = (binary_expression "puVar29 + -0x28" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot create directory %s";" (assignment_expression "pcVar20 = "cannot create directory %s"" identifier = (string_literal ""cannot create directory %s"" " string_content ")) ;) (labeled_statement "LAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar33 + -4) = pcVar20;" (assignment_expression "*(char **)(puVar33 + -4) = pcVar20" (pointer_expression "*(char **)(puVar33 + -4)" * (cast_expression "(char **)(puVar33 + -4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar33 + -4)" ( (binary_expression "puVar33 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar33 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar33 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar33 + -8)" * (cast_expression "(undefined4 *)(puVar33 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -8)" ( (binary_expression "puVar33 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = 0x16f98;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = 0x16f98" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" * (cast_expression "(undefined4 *)(puVar33 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0xc)" ( (binary_expression "puVar33 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = 0x16f9f;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = 0x16f9f" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" * (cast_expression "(undefined4 *)(puVar33 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0xc)" ( (binary_expression "puVar33 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" * (cast_expression "(undefined4 *)(puVar33 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0xc)" ( (binary_expression "puVar33 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar33 + -0x10) = uVar12;" (assignment_expression "*(undefined4 *)(puVar33 + -0x10) = uVar12" (pointer_expression "*(undefined4 *)(puVar33 + -0x10)" * (cast_expression "(undefined4 *)(puVar33 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0x10)" ( (binary_expression "puVar33 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar33 + -0x14) = *piVar14;" (assignment_expression "*(int *)(puVar33 + -0x14) = *piVar14" (pointer_expression "*(int *)(puVar33 + -0x14)" * (cast_expression "(int *)(puVar33 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0x14)" ( (binary_expression "puVar33 + -0x14" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar33 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar33 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar33 + -0x18)" * (cast_expression "(undefined4 *)(puVar33 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0x18)" ( (binary_expression "puVar33 + -0x18" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;" (assignment_expression "*(undefined **)(puVar33 + -0x1c) = &UNK_00016faa" (pointer_expression "*(undefined **)(puVar33 + -0x1c)" * (cast_expression "(undefined **)(puVar33 + -0x1c)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar33 + -0x1c)" ( (binary_expression "puVar33 + -0x1c" identifier + number_literal) )))) = (pointer_expression "&UNK_00016faa" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(stat64 **)(puVar29 + -0x28) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -0x28) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -0x28)" * (cast_expression "(stat64 **)(puVar29 + -0x28)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = (pointer_expression "&local_154" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17176;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17176" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" identifier = (call_expression "__lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" identifier (argument_list "(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" ( (pointer_expression "*(int *)(puVar29 + -0x30)" * (cast_expression "(int *)(puVar29 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -0x28)" * (cast_expression "(stat64 **)(puVar29 + -0x28)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) )))) ;) (expression_statement "_Var5 = local_154.st_mode;" (assignment_expression "_Var5 = local_154.st_mode" identifier = (field_expression "local_154.st_mode" identifier . field_identifier)) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x18ce1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x18ce1" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" identifier = (binary_expression "puVar29 + -0x28" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot stat %s";" (assignment_expression "pcVar20 = "cannot stat %s"" identifier = (string_literal ""cannot stat %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" identifier = (binary_expression "local_24c & 0xffffff00" identifier & number_literal)) ;) (if_statement "if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }" if (parenthesized_expression "((local_154.st_mode & 0x1c0) != 0x1c0)" ( (binary_expression "(local_154.st_mode & 0x1c0) != 0x1c0" (parenthesized_expression "(local_154.st_mode & 0x1c0)" ( (binary_expression "local_154.st_mode & 0x1c0" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }" { (expression_statement "*(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;" (assignment_expression "*(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0" (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" * (cast_expression "(__mode_t *)(puVar29 + -0x2c)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (binary_expression "local_154.st_mode | 0x1c0" (field_expression "local_154.st_mode" identifier . field_identifier) | number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x171b2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x171b2" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));" (assignment_expression "iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier = (call_expression "chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier (argument_list "(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" ( (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" * (cast_expression "(__mode_t *)(puVar29 + -0x2c)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) )))) ;) (expression_statement "local_270 = _Var5;" (assignment_expression "local_270 = _Var5" identifier = identifier) ;) (expression_statement "local_24c = CONCAT31(local_24c._1_3_,1);" (assignment_expression "local_24c = CONCAT31(local_24c._1_3_,1)" identifier = (call_expression "CONCAT31(local_24c._1_3_,1)" identifier (argument_list "(local_24c._1_3_,1)" ( (field_expression "local_24c._1_3_" identifier . field_identifier) , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19082;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19082" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" identifier = (binary_expression "puVar29 + -0x28" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "setting permissions for %s";" (assignment_expression "pcVar20 = "setting permissions for %s"" identifier = (string_literal ""setting permissions for %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) })) (if_statement "if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }" if (parenthesized_expression "(*local_21c == (code)0x0)" ( (binary_expression "*local_21c == (code)0x0" (pointer_expression "*local_21c" * identifier) == (cast_expression "(code)0x0" ( (type_descriptor "code" type_identifier) ) number_literal)) )) (compound_statement "{\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }" { (expression_statement "*(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;" (assignment_expression "*(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_" (pointer_expression "*(__ino_t *)(puVar29 + -0x30)" * (cast_expression "(__ino_t *)(puVar29 + -0x30)" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = (field_expression "local_154.st_dev._4_4_" (field_expression "local_154.st_dev" identifier . field_identifier) . field_identifier)) ;) (expression_statement "*(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;" (assignment_expression "*(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev" (pointer_expression "*(byte **)(puVar29 + -0x34)" * (cast_expression "(byte **)(puVar29 + -0x34)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = (cast_expression "(byte *)local_154.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_154.st_dev" identifier . field_identifier))) ;) (expression_statement "*(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;" (assignment_expression "*(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_" (pointer_expression "*(uint *)(puVar29 + -0x38)" * (cast_expression "(uint *)(puVar29 + -0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x38)" ( (binary_expression "puVar29 + -0x38" identifier + number_literal) )))) = (field_expression "local_154.st_ino._4_4_" (field_expression "local_154.st_ino" identifier . field_identifier) . field_identifier)) ;) (expression_statement "*(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;" (assignment_expression "*(int *)(puVar29 + -0x3c) = (int)local_154.st_ino" (pointer_expression "*(int *)(puVar29 + -0x3c)" * (cast_expression "(int *)(puVar29 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x3c)" ( (binary_expression "puVar29 + -0x3c" identifier + number_literal) )))) = (cast_expression "(int)local_154.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_ino" identifier . field_identifier))) ;) (expression_statement "*(char **)(puVar29 + -0x40) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x40) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x40)" * (cast_expression "(char **)(puVar29 + -0x40)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x40)" ( (binary_expression "puVar29 + -0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x44) = 0x18c19;" (assignment_expression "*(undefined4 *)(puVar29 + -0x44) = 0x18c19" (pointer_expression "*(undefined4 *)(puVar29 + -0x44)" * (cast_expression "(undefined4 *)(puVar29 + -0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x44)" ( (binary_expression "puVar29 + -0x44" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001a5c0();" (call_expression "FUN_0001a5c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*local_21c = (code)0x1;" (assignment_expression "*local_21c = (code)0x1" (pointer_expression "*local_21c" * identifier) = (cast_expression "(code)0x1" ( (type_descriptor "code" type_identifier) ) number_literal)) ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }" { (if_statement "if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }" { (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x18d28;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x18d28" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" else (compound_statement "{\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x171ff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x171ff" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = "created directory %s\n";" (assignment_expression "*(char **)(puVar29 + -0x2c) = "created directory %s\n"" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (string_literal ""created directory %s\n"" " string_content escape_sequence ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17214;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17214" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x2c) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x2c) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x2c)" * (cast_expression "(undefined4 *)(puVar29 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17220;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17220" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) }))) })) }))) (expression_statement "puVar34 = puVar29 + -0x20;" (assignment_expression "puVar34 = puVar29 + -0x20" identifier = (binary_expression "puVar29 + -0x20" identifier + number_literal)) ;) (expression_statement "bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);" (assignment_expression "bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7)" identifier = (binary_expression "local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7)" (binary_expression "local_22c != (__ino_t *)0x0" identifier != (cast_expression "(__ino_t *)0x0" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) & (pointer_expression "*(byte *)(local_1f0 + 7)" * (cast_expression "(byte *)(local_1f0 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 7)" ( (binary_expression "local_1f0 + 7" identifier + number_literal) )))))) ;) (expression_statement "uVar9 = (uint)bVar25;" (assignment_expression "uVar9 = (uint)bVar25" identifier = (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }" if (parenthesized_expression "((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_))" ( (binary_expression "(bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)" (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) || (parenthesized_expression "(local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)" ( (binary_expression "local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_" (binary_expression "local_22c[1] == local_1b4._4_4_" (subscript_expression "local_22c[1]" identifier [ number_literal ]) == (field_expression "local_1b4._4_4_" identifier . field_identifier)) && (binary_expression "(byte *)*local_22c == (byte *)local_1b4._0_4_" (cast_expression "(byte *)*local_22c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_22c" * identifier)) == (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)))) ))) )) (compound_statement "{\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }" { (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" identifier = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "psVar26 = local_240;" (assignment_expression "psVar26 = local_240" identifier = identifier) ;) (for_statement "for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }" for ( (assignment_expression "iVar10 = 0x11" identifier = number_literal) ; (binary_expression "iVar10 != 0" identifier != number_literal) ; (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ) (compound_statement "{\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }" { (expression_statement "*(int *)&psVar26->st_dev = *piVar14;" (assignment_expression "*(int *)&psVar26->st_dev = *piVar14" (pointer_expression "*(int *)&psVar26->st_dev" * (cast_expression "(int *)&psVar26->st_dev" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar26->st_dev" & (field_expression "psVar26->st_dev" identifier -> field_identifier)))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "piVar14 = piVar14 + (uint)bVar40 * -2 + 1;" (assignment_expression "piVar14 = piVar14 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "piVar14 + (uint)bVar40 * -2 + 1" (binary_expression "piVar14 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) (expression_statement "*(undefined4 *)(puVar29 + -0x2c) = 2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x2c) = 2" (pointer_expression "*(undefined4 *)(puVar29 + -0x2c)" * (cast_expression "(undefined4 *)(puVar29 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_200" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1726d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1726d" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = (char *)FUN_000212f0();" (assignment_expression "pcVar20 = (char *)FUN_000212f0()" identifier = (cast_expression "(char *)FUN_000212f0()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000212f0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_230 = pcVar20;" (assignment_expression "local_230 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }" if (parenthesized_expression "(pcVar20 == (char *)0x0)" ( (binary_expression "pcVar20 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_200" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19153;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19153" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = "cannot access %s";" (assignment_expression "*(char **)(puVar29 + -0x2c) = "cannot access %s"" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (string_literal ""cannot access %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19168;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19168" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1916f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1916f" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x38) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x38) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x38)" * (cast_expression "(undefined4 *)(puVar29 + -0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x38)" ( (binary_expression "puVar29 + -0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x3c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x3c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x3c)" * (cast_expression "(int *)(puVar29 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x3c)" ( (binary_expression "puVar29 + -0x3c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x40) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x40) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x40)" * (cast_expression "(undefined4 *)(puVar29 + -0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x40)" ( (binary_expression "puVar29 + -0x40" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x44) = &UNK_0001917c;" (assignment_expression "*(undefined **)(puVar29 + -0x44) = &UNK_0001917c" (pointer_expression "*(undefined **)(puVar29 + -0x44)" * (cast_expression "(undefined **)(puVar29 + -0x44)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x44)" ( (binary_expression "puVar29 + -0x44" identifier + number_literal) )))) = (pointer_expression "&UNK_0001917c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }" if (parenthesized_expression "(local_1f0[1] == 3)" ( (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n              local_94.st_dev._4_4_ = 2;\n            }" { (expression_statement "local_94.st_dev._4_4_ = 2;" (assignment_expression "local_94.st_dev._4_4_ = 2" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = number_literal) ;) })) (if_statement "if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" if (parenthesized_expression "(*pcVar20 == '\0')" ( (binary_expression "*pcVar20 == '\0'" (pointer_expression "*pcVar20" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }" { (expression_statement "local_228 = (int *)((uint)local_228._1_3_ << 8);" (assignment_expression "local_228 = (int *)((uint)local_228._1_3_ << 8)" identifier = (cast_expression "(int *)((uint)local_228._1_3_ << 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_228._1_3_ << 8)" ( (binary_expression "(uint)local_228._1_3_ << 8" (cast_expression "(uint)local_228._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_228._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" identifier = number_literal) ;) }) (else_clause "else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" else (compound_statement "{\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" { (expression_statement "local_20c = local_1b4;" (assignment_expression "local_20c = local_1b4" identifier = identifier) ;) (expression_statement "local_228 = (int *)((uint)local_228._1_3_ << 8);" (assignment_expression "local_228 = (int *)((uint)local_228._1_3_ << 8)" identifier = (cast_expression "(int *)((uint)local_228._1_3_ << 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_228._1_3_ << 8)" ( (binary_expression "(uint)local_228._1_3_ << 8" (cast_expression "(uint)local_228._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_228._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_234 = (stat64 *)local_f4;" (assignment_expression "local_234 = (stat64 *)local_f4" identifier = (cast_expression "(stat64 *)local_f4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,1);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,1)" identifier = (call_expression "CONCAT31(local_224._1_3_,1)" identifier (argument_list "(local_224._1_3_,1)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , number_literal )))) ;) (do_statement "do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');" do (compound_statement "{\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              }" { (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x2c) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_200" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1731f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1731f" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppbVar17 = (byte **)FUN_0001d480();" (assignment_expression "ppbVar17 = (byte **)FUN_0001d480()" identifier = (cast_expression "(byte **)FUN_0001d480()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001d480()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x2c) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_214 = ppbVar17;" (assignment_expression "local_214 = ppbVar17" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17336;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17336" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_0001d480();" (assignment_expression "uVar11 = FUN_0001d480()" identifier = (call_expression "FUN_0001d480()" identifier (argument_list "()" ( )))) ;) (expression_statement "cVar1 = *local_21c;" (assignment_expression "cVar1 = *local_21c" identifier = (pointer_expression "*local_21c" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(__ino_t **)(puVar29 + -0x2c) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x2c) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x2c)" * (cast_expression "(__ino_t **)(puVar29 + -0x2c)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(stat64 **)(puVar29 + -0x30) = local_234;" (assignment_expression "*(stat64 **)(puVar29 + -0x30) = local_234" (pointer_expression "*(stat64 **)(puVar29 + -0x30)" * (cast_expression "(stat64 **)(puVar29 + -0x30)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(stat64 **)(puVar29 + -0x38) = local_240;" (assignment_expression "*(stat64 **)(puVar29 + -0x38) = local_240" (pointer_expression "*(stat64 **)(puVar29 + -0x38)" * (cast_expression "(stat64 **)(puVar29 + -0x38)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x38)" ( (binary_expression "puVar29 + -0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(stat64 **)(puVar29 + -0x3c) = local_238;" (assignment_expression "*(stat64 **)(puVar29 + -0x3c) = local_238" (pointer_expression "*(stat64 **)(puVar29 + -0x3c)" * (cast_expression "(stat64 **)(puVar29 + -0x3c)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x3c)" ( (binary_expression "puVar29 + -0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(byte **)(puVar29 + -0x40) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0x40) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0x40)" * (cast_expression "(byte **)(puVar29 + -0x40)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x40)" ( (binary_expression "puVar29 + -0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_f4[0] = (byte)cVar1;" (assignment_expression "local_f4[0] = (byte)cVar1" (subscript_expression "local_f4[0]" identifier [ number_literal ]) = (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x44) = 0x1737f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x44) = 0x1737f" (pointer_expression "*(undefined4 *)(puVar29 + -0x44)" * (cast_expression "(undefined4 *)(puVar29 + -0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x44)" ( (binary_expression "puVar29 + -0x44" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar40 = FUN_00015de0();" (assignment_expression "bVar40 = FUN_00015de0()" identifier = (call_expression "FUN_00015de0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40)" identifier = (call_expression "CONCAT31(local_224._1_3_,(byte)local_224 & bVar40)" identifier (argument_list "(local_224._1_3_,(byte)local_224 & bVar40)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (binary_expression "(byte)local_224 & bVar40" (cast_expression "(byte)local_224" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (expression_statement "*local_220 = (code)((byte)*local_220 | (byte)local_1d4);" (assignment_expression "*local_220 = (code)((byte)*local_220 | (byte)local_1d4)" (pointer_expression "*local_220" * identifier) = (call_expression "(code)((byte)*local_220 | (byte)local_1d4)" (parenthesized_expression "(code)" ( identifier )) (argument_list "((byte)*local_220 | (byte)local_1d4)" ( (binary_expression "(byte)*local_220 | (byte)local_1d4" (binary_expression "(byte)*local_220" (parenthesized_expression "(byte)" ( identifier )) * identifier) | (cast_expression "(byte)local_1d4" ( (type_descriptor "byte" type_identifier) ) identifier)) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1739d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1739d" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" identifier (argument_list "(*(void **)(puVar29 + -0x30))" ( (pointer_expression "*(void **)(puVar29 + -0x30)" * (cast_expression "(void **)(puVar29 + -0x30)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "*(byte ***)(puVar29 + -0x30) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0x30) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0x30)" * (cast_expression "(byte ***)(puVar29 + -0x30)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x173a9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x173a9" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" identifier (argument_list "(*(void **)(puVar29 + -0x30))" ( (pointer_expression "*(void **)(puVar29 + -0x30)" * (cast_expression "(void **)(puVar29 + -0x30)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) ))) ;) (if_statement "if ((byte)local_1d4 != '\0') break;" if (parenthesized_expression "((byte)local_1d4 != '\0')" ( (binary_expression "(byte)local_1d4 != '\0'" (cast_expression "(byte)local_1d4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);" (assignment_expression "local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" identifier = (cast_expression "(int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" identifier (argument_list "(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" ( (field_expression "local_228._1_3_" identifier . field_identifier) , (binary_expression "(byte)local_228._0_1_ | local_f4[0]" (cast_expression "(byte)local_228._0_1_" ( (type_descriptor "byte" type_identifier) ) (field_expression "local_228._0_1_" identifier . field_identifier)) | (subscript_expression "local_f4[0]" identifier [ number_literal ])) ))))) ;) (expression_statement "*(char **)(puVar29 + -0x30) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x30) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x172fe;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x172fe" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar16 = strlen(*(char **)(puVar29 + -0x30));" (assignment_expression "sVar16 = strlen(*(char **)(puVar29 + -0x30))" identifier = (call_expression "strlen(*(char **)(puVar29 + -0x30))" identifier (argument_list "(*(char **)(puVar29 + -0x30))" ( (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) )))) ;) (expression_statement "pcVar20 = pcVar20 + sVar16 + 1;" (assignment_expression "pcVar20 = pcVar20 + sVar16 + 1" identifier = (binary_expression "pcVar20 + sVar16 + 1" (binary_expression "pcVar20 + sVar16" identifier + identifier) + number_literal)) ;) }) while (parenthesized_expression "(*pcVar20 != '\0')" ( (binary_expression "*pcVar20 != '\0'" (pointer_expression "*pcVar20" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "uVar9 = local_224 & 0xff;" (assignment_expression "uVar9 = local_224 & 0xff" identifier = (binary_expression "local_224 & 0xff" identifier & number_literal)) ;) }))) (expression_statement "*(char **)(puVar29 + -0x30) = local_230;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_230" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x173ce;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x173ce" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" identifier (argument_list "(*(void **)(puVar29 + -0x30))" ( (pointer_expression "*(void **)(puVar29 + -0x30)" * (cast_expression "(void **)(puVar29 + -0x30)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "*local_21c = local_228._0_1_;" (assignment_expression "*local_21c = local_228._0_1_" (pointer_expression "*local_21c" * identifier) = (field_expression "local_228._0_1_" identifier . field_identifier)) ;) })) (if_statement "if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8)" identifier = (cast_expression "(undefined1 *)((uint)local_208._1_3_ << 8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208._1_3_ << 8)" ( (binary_expression "(uint)local_208._1_3_ << 8" (cast_expression "(uint)local_208._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_208._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "bVar40 = 0;" (assignment_expression "bVar40 = 0" identifier = number_literal) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(char)uVar9);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(char)uVar9)" identifier = (call_expression "CONCAT31(local_224._1_3_,(char)uVar9)" identifier (argument_list "(local_224._1_3_,(char)uVar9)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(char)uVar9" ( (type_descriptor "char" primitive_type) ) identifier) )))) ;) (labeled_statement "LAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" statement_identifier : (if_statement "if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" if (parenthesized_expression "(local_1f0[0xf] != 0)" ( (binary_expression "local_1f0[0xf] != 0" (subscript_expression "local_1f0[0xf]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" { (expression_statement "local_1fc = CONCAT31(local_1fc._1_3_,bVar40);" (assignment_expression "local_1fc = CONCAT31(local_1fc._1_3_,bVar40)" identifier = (call_expression "CONCAT31(local_1fc._1_3_,bVar40)" identifier (argument_list "(local_1fc._1_3_,bVar40)" ( (field_expression "local_1fc._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "*(stat64 **)(puVar34 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar34 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar34 + -8)" * (cast_expression "(stat64 **)(puVar34 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -8)" ( (binary_expression "puVar34 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar34 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar34 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar34 + -0xc)" * (cast_expression "(char **)(puVar34 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -0xc)" ( (binary_expression "puVar34 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar34 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar34 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar34 + -0x10)" * (cast_expression "(undefined4 *)(puVar34 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x10)" ( (binary_expression "puVar34 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar34 + -0x14) = 0x1674c;" (assignment_expression "*(undefined4 *)(puVar34 + -0x14) = 0x1674c" (pointer_expression "*(undefined4 *)(puVar34 + -0x14)" * (cast_expression "(undefined4 *)(puVar34 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x14)" ( (binary_expression "puVar34 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" identifier (argument_list "(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" ( (pointer_expression "*(int *)(puVar34 + -0x10)" * (cast_expression "(int *)(puVar34 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x10)" ( (binary_expression "puVar34 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar34 + -0xc)" * (cast_expression "(char **)(puVar34 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -0xc)" ( (binary_expression "puVar34 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar34 + -8)" * (cast_expression "(stat64 **)(puVar34 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -8)" ( (binary_expression "puVar34 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "bVar40 = (byte)local_1fc;" (assignment_expression "bVar40 = (byte)local_1fc" identifier = (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }" { (expression_statement "*(stat64 **)(puVar34 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar34 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar34 + -8)" * (cast_expression "(stat64 **)(puVar34 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -8)" ( (binary_expression "puVar34 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar34 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar34 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar34 + -0xc)" * (cast_expression "(char **)(puVar34 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -0xc)" ( (binary_expression "puVar34 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar34 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar34 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar34 + -0x10)" * (cast_expression "(int *)(puVar34 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x10)" ( (binary_expression "puVar34 + -0x10" identifier + number_literal) )))) = (subscript_expression "piVar14[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar34 + -0x14) = 0x16772;" (assignment_expression "*(undefined4 *)(puVar34 + -0x14) = 0x16772" (pointer_expression "*(undefined4 *)(puVar34 + -0x14)" * (cast_expression "(undefined4 *)(puVar34 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x14)" ( (binary_expression "puVar34 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" identifier (argument_list "()" ( ))) ;) (expression_statement "bVar40 = (byte)local_1fc;" (assignment_expression "bVar40 = (byte)local_1fc" identifier = (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) })) }))) (expression_statement "uVar9 = local_224 & 0xff;" (assignment_expression "uVar9 = local_224 & 0xff" identifier = (binary_expression "local_224 & 0xff" identifier & number_literal)) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier = (call_expression "CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier (argument_list "(local_224._1_3_,(undefined1)local_24c)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(undefined1)local_24c" ( (type_descriptor "undefined1" type_identifier) ) identifier) )))) ;) (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" identifier = identifier) ;) (goto_statement "goto LAB_00016794;" goto statement_identifier ;) })) (expression_statement "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8)" identifier = (cast_expression "(undefined1 *)((uint)local_208._1_3_ << 8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208._1_3_ << 8)" ( (binary_expression "(uint)local_208._1_3_ << 8" (cast_expression "(uint)local_208._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_208._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier = (call_expression "CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier (argument_list "(local_224._1_3_,(undefined1)local_24c)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(undefined1)local_24c" ( (type_descriptor "undefined1" type_identifier) ) identifier) )))) ;) (expression_statement "puVar29 = puVar29 + -0x20;" (assignment_expression "puVar29 = puVar29 + -0x20" identifier = (binary_expression "puVar29 + -0x20" identifier + number_literal)) ;) }) (else_clause "else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" else (compound_statement "{\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" { (labeled_statement "LAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);" statement_identifier : (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" identifier (argument_list "(local_208._1_3_,(char)local_1f0[0xb])" ( (field_expression "local_208._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) ))))) ;)) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" identifier = identifier) ;) (if_statement "if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }" if (parenthesized_expression "((char)local_1f0[0xb] != '\0')" ( (binary_expression "(char)local_1f0[0xb] != '\0'" (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }" { (if_statement "if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }" if (parenthesized_expression "(*local_200 != '/')" ( (binary_expression "*local_200 != '/'" (pointer_expression "*local_200" * identifier) != (char_literal "'/'" ' character ')) )) (compound_statement "{\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }" { (expression_statement "uVar38 = puVar29 < (undefined1 *)0xc;" (assignment_expression "uVar38 = puVar29 < (undefined1 *)0xc" identifier = (binary_expression "puVar29 < (undefined1 *)0xc" identifier < (cast_expression "(undefined1 *)0xc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "uVar39 = puVar29 == (undefined1 *)0xc;" (assignment_expression "uVar39 = puVar29 == (undefined1 *)0xc" identifier = (binary_expression "puVar29 == (undefined1 *)0xc" identifier == (cast_expression "(undefined1 *)0xc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1667f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1667f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pbVar13 = (byte *)FUN_0001cf20();" (assignment_expression "pbVar13 = (byte *)FUN_0001cf20()" identifier = (cast_expression "(byte *)FUN_0001cf20()" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001cf20()" identifier (argument_list "()" ( ))))) ;) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) (expression_statement "pbVar35 = &DAT_0002c142;" (assignment_expression "pbVar35 = &DAT_0002c142" identifier = (pointer_expression "&DAT_0002c142" & identifier)) ;) (expression_statement "pbVar36 = pbVar13;" (assignment_expression "pbVar36 = pbVar13" identifier = identifier) ;) (do_statement "do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);" do (compound_statement "{\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              }" { (if_statement "if (iVar10 == 0) break;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = iVar10 + -1;" (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ;) (expression_statement "uVar38 = *pbVar35 < *pbVar36;" (assignment_expression "uVar38 = *pbVar35 < *pbVar36" identifier = (binary_expression "*pbVar35 < *pbVar36" (pointer_expression "*pbVar35" * identifier) < (pointer_expression "*pbVar36" * identifier))) ;) (expression_statement "uVar39 = *pbVar35 == *pbVar36;" (assignment_expression "uVar39 = *pbVar35 == *pbVar36" identifier = (binary_expression "*pbVar35 == *pbVar36" (pointer_expression "*pbVar35" * identifier) == (pointer_expression "*pbVar36" * identifier))) ;) (expression_statement "pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;" (assignment_expression "pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pbVar35 + (uint)bVar40 * -2 + 1" (binary_expression "pbVar35 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;" (assignment_expression "pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pbVar36 + (uint)bVar40 * -2 + 1" (binary_expression "pbVar36 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar39)" ( (cast_expression "(bool)uVar39" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }" if (parenthesized_expression "((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38)" ( (binary_expression "(!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38" (parenthesized_expression "(!(bool)uVar38 && !(bool)uVar39)" ( (binary_expression "!(bool)uVar38 && !(bool)uVar39" (unary_expression "!(bool)uVar38" ! (cast_expression "(bool)uVar38" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar39" ! (cast_expression "(bool)uVar39" ( (type_descriptor "bool" primitive_type) ) identifier))) )) != (cast_expression "(bool)uVar38" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }" { (expression_statement "local_20c = pbVar13;" (assignment_expression "local_20c = pbVar13" identifier = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_f4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_f4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;" (assignment_expression "*(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142" (pointer_expression "*(undefined1 **)(puVar29 + -0xc)" * (cast_expression "(undefined1 **)(puVar29 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&DAT_0002c142" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17ae0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17ae0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (if_statement "if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }" { (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(byte **)(puVar29 + -0xc) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0xc) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0xc)" * (cast_expression "(byte **)(puVar29 + -0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (if_statement "if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }" if (parenthesized_expression "((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev))))" ( (binary_expression "(iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))" ( (parenthesized_expression "((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev))" ( (binary_expression "(local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)" (parenthesized_expression "(local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_))" ( (binary_expression "local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)" (binary_expression "local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino" (binary_expression "local_98 != local_94.st_ino._4_4_" identifier != (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier)) || (binary_expression "local_9c != (int)local_94.st_ino" identifier != (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)))) || (parenthesized_expression "(local_f4._4_4_ != local_94.st_dev._4_4_)" ( (binary_expression "local_f4._4_4_ != local_94.st_dev._4_4_" (field_expression "local_f4._4_4_" identifier . field_identifier) != (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier)) ))) )) || (parenthesized_expression "((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)" ( (binary_expression "(byte *)local_f4._0_4_ != (byte *)local_94.st_dev" (cast_expression "(byte *)local_f4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._0_4_" identifier . field_identifier)) != (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }" { (expression_statement "*(byte **)(puVar29 + -0x10) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0x10) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0x10)" * (cast_expression "(byte **)(puVar29 + -0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b37;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b37" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b49;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b49" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" identifier = (call_expression "FUN_00020700()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "%s: can make relative symbolic links only in current directory";" (assignment_expression "pcVar20 = "%s: can make relative symbolic links only in current directory"" identifier = (string_literal ""%s: can make relative symbolic links only in current directory"" " string_content ")) ;) (labeled_statement "LAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0xc) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0xc) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16e93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16e93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00016e9e" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00016e9e" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) })) (expression_statement "*(byte **)(puVar29 + -0x10) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x10) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x10)" * (cast_expression "(byte **)(puVar29 + -0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x166ac;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x166ac" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) })) (expression_statement "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);" (assignment_expression "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16)" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (binary_expression "(uint)*(byte *)((int)local_1f0 + 0x16)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)((int)local_1f0 + 0x16)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x166cf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x166cf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001ade0();" (assignment_expression "iVar10 = FUN_0001ade0()" identifier = (call_expression "FUN_0001ade0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (if_statement "if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1898c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1898c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f4 = (char *)uVar11;" (assignment_expression "local_1f4 = (char *)uVar11" identifier = (cast_expression "(char *)uVar11" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189a4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189a4" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot create symbolic link %s to %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189b9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189b9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189c0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189c0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f4;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f4" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000189d4;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000189d4" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000189d4" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000166da;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }" { (expression_statement "*(byte **)(puVar29 + -0xc) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0xc) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0xc)" * (cast_expression "(byte **)(puVar29 + -0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18382;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18382" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar40 = FUN_00014f10();" (assignment_expression "bVar40 = FUN_00014f10()" identifier = (call_expression "FUN_00014f10()" identifier (argument_list "()" ( )))) ;) (labeled_statement "joined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;" statement_identifier : (if_statement "if (bVar40 != 0) goto LAB_000166da;" if (parenthesized_expression "(bVar40 != 0)" ( (binary_expression "bVar40 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000166da;" goto statement_identifier ;))) (labeled_statement "LAB_00016fad:\n            puVar29 = puVar34;" statement_identifier : (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" identifier = identifier) ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }" { (labeled_statement "LAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x177a5;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x177a5" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }" if (parenthesized_expression "(local_214 == (byte **)0x0)" ( (binary_expression "local_214 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_158" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18325;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18325" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001a4c0();" (call_expression "FUN_0001a4c0()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_00016fcb;" goto statement_identifier ;) })) (if_statement "if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }" if (parenthesized_expression "((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0))" ( (binary_expression "(local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)" (parenthesized_expression "(local_238 == (stat64 *)0x8000)" ( (binary_expression "local_238 == (stat64 *)0x8000" identifier == (cast_expression "(stat64 *)0x8000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)" ( (binary_expression "(local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0" (parenthesized_expression "(local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5))" ( (binary_expression "local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)" (binary_expression "local_238 != (stat64 *)0xa000" identifier != (cast_expression "(stat64 *)0xa000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) & (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) ))))) )) != number_literal) ))) )) (compound_statement "{\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }" { (expression_statement "local_244 = local_1b4._16_4_;" (assignment_expression "local_244 = local_1b4._16_4_" identifier = (field_expression "local_1b4._16_4_" identifier . field_identifier)) ;) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" identifier (argument_list "(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , (pointer_expression "*(undefined1 *)((int)local_1f0 + 0x23)" * (cast_expression "(undefined1 *)((int)local_1f0 + 0x23)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x23)" ( (binary_expression "(int)local_1f0 + 0x23" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(uint)(local_1f0[1] == 2) << 0x11" (call_expression "(uint)(local_1f0[1] == 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[1] == 2)" ( (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) ))) << number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b97;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b97" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_208 = (undefined1 *)FUN_0001d190();" (assignment_expression "local_208 = (undefined1 *)FUN_0001d190()" identifier = (cast_expression "(undefined1 *)FUN_0001d190()" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "((int)local_208 < 0)" ( (binary_expression "(int)local_208 < 0" (cast_expression "(int)local_208" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot open %s for reading";" (assignment_expression "pcVar20 = "cannot open %s for reading"" identifier = (string_literal ""cannot open %s for reading"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_f4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_f4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0xc) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0xc) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0xc)" * (cast_expression "(undefined1 **)(puVar29 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17bbf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17bbf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f4d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f4d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot fstat %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot fstat %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot fstat %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f62;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f62" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f69;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f69" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (goto_statement "goto LAB_00018b73;" goto statement_identifier ;) })) (if_statement "if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }" if (parenthesized_expression "((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_))" ( (binary_expression "(local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)" (parenthesized_expression "(local_158 != local_98 || local_15c != local_9c)" ( (binary_expression "local_158 != local_98 || local_15c != local_9c" (binary_expression "local_158 != local_98" identifier != identifier) || (binary_expression "local_15c != local_9c" identifier != identifier)) )) || (parenthesized_expression "(local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)" ( (binary_expression "local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_" (binary_expression "local_1b4._4_4_ != local_f4._4_4_" (field_expression "local_1b4._4_4_" identifier . field_identifier) != (field_expression "local_f4._4_4_" identifier . field_identifier)) || (binary_expression "local_1b4._0_4_ != local_f4._0_4_" (field_expression "local_1b4._0_4_" identifier . field_identifier) != (field_expression "local_f4._0_4_" identifier . field_identifier))) ))) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b5a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b5a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;" (assignment_expression "*(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""skipping file %s, as it was replaced while being copied"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b6f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b6f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00018b73;" goto statement_identifier ;) })) (expression_statement "local_284 = (uint)local_234 & 0x1ff;" (assignment_expression "local_284 = (uint)local_234 & 0x1ff" identifier = (binary_expression "(uint)local_234 & 0x1ff" (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }" if (parenthesized_expression "((byte)local_1f4 != '\0')" ( (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }" { (labeled_statement "LAB_00019094:\n              local_278 = local_23c;" statement_identifier : (expression_statement "local_278 = local_23c;" (assignment_expression "local_278 = local_23c" identifier = identifier) ;)) (labeled_statement "LAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);" statement_identifier : (expression_statement "pcVar19 = (code *)(~local_278 & local_284);" (assignment_expression "pcVar19 = (code *)(~local_278 & local_284)" identifier = (cast_expression "(code *)(~local_278 & local_284)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(~local_278 & local_284)" ( (binary_expression "~local_278 & local_284" (unary_expression "~local_278" ~ identifier) & identifier) )))) ;)) (expression_statement "*(code **)(puVar29 + -8) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -8) = pcVar19" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xc1;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xc1" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_21c = pcVar19;" (assignment_expression "local_21c = pcVar19" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x190c8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x190c8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = (int *)FUN_0001d190();" (assignment_expression "piVar14 = (int *)FUN_0001d190()" identifier = (cast_expression "(int *)FUN_0001d190()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_228 = piVar14;" (assignment_expression "local_228 = piVar14" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x190d5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x190d5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)__errno_location();" (assignment_expression "local_220 = (code *)__errno_location()" identifier = (cast_expression "(code *)__errno_location()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__errno_location()" identifier (argument_list "()" ( ))))) ;) (expression_statement "iVar10 = *(int *)local_220;" (assignment_expression "iVar10 = *(int *)local_220" identifier = (pointer_expression "*(int *)local_220" * (cast_expression "(int *)local_220" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);" (assignment_expression "bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f)" identifier = (binary_expression "iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f)" (binary_expression "iVar10 == 0x11" identifier == number_literal) & (call_expression "(byte)((uint)piVar14 >> 0x1f)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uint)piVar14 >> 0x1f)" ( (binary_expression "(uint)piVar14 >> 0x1f" (cast_expression "(uint)piVar14" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))))) ;) (expression_statement "local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);" (assignment_expression "local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25)" identifier = (cast_expression "(__ino_t *)CONCAT31(local_22c._1_3_,bVar25)" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_22c._1_3_,bVar25)" identifier (argument_list "(local_22c._1_3_,bVar25)" ( (field_expression "local_22c._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }" { (labeled_statement "LAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);" statement_identifier : (expression_statement "bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);" (assignment_expression "bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f)" identifier = (binary_expression "iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f)" (binary_expression "iVar10 == 0x15" identifier == number_literal) & (call_expression "(byte)((uint)local_228 >> 0x1f)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uint)local_228 >> 0x1f)" ( (binary_expression "(uint)local_228 >> 0x1f" (cast_expression "(uint)local_228" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))))) ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,bVar25)" identifier (argument_list "(local_1f4._1_3_,bVar25)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (compound_statement "{\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }" { (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (if_statement "if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }" if (parenthesized_expression "(-1 < (int)local_228)" ( (binary_expression "-1 < (int)local_228" number_literal < (cast_expression "(int)local_228" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }" { (labeled_statement "LAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;" statement_identifier : (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;)) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" identifier = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17c9e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17c9e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198f9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198f9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot fstat %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot fstat %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot fstat %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1990e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1990e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19915;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19915" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019922;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019922" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019922" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "uVar11 = extraout_ECX;" (assignment_expression "uVar11 = extraout_ECX" identifier = identifier) ;) (if_statement "if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }" if (parenthesized_expression "((byte)local_20c != '\0')" ( (binary_expression "(byte)local_20c != '\0'" (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }" { (if_statement "if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }" if (parenthesized_expression "(local_1f0[0xe] != 0)" ( (binary_expression "local_1f0[0xe] != 0" (subscript_expression "local_1f0[0xe]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0x40049409;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0x40049409" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d52;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d52" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" identifier = (call_expression "ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(ulong *)(puVar29 + -0xc)" * (cast_expression "(ulong *)(puVar29 + -0xc)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "uVar11 = extraout_ECX_11;" (assignment_expression "uVar11 = extraout_ECX_11" identifier = identifier) ;) (if_statement "if (iVar10 == 0) goto LAB_000194e2;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000194e2;" goto statement_identifier ;)) (if_statement "if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }" if (parenthesized_expression "(local_1f0[0xe] == 2)" ( (binary_expression "local_1f0[0xe] == 2" (subscript_expression "local_1f0[0xe]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d7d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d7d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d91;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d91" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_20c = (byte *)FUN_000203c0();" (assignment_expression "local_20c = (byte *)FUN_000203c0()" identifier = (cast_expression "(byte *)FUN_000203c0()" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "failed to clone %s from %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "failed to clone %s from %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""failed to clone %s from %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19daa;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19daa" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19db1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19db1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(byte **)(puVar29 + -0x14) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x14) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x14)" * (cast_expression "(byte **)(puVar29 + -0x14)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019dc7" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019dc7" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x17ccd;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x17ccd" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar9 = getpagesize();" (assignment_expression "uVar9 = getpagesize()" identifier = (call_expression "getpagesize()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_25c = (code *)local_94.st_blksize;" (assignment_expression "local_25c = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) (expression_statement "local_258 = (code *)local_94.st_blksize;" (assignment_expression "local_258 = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) (expression_statement "pcVar19 = (code *)(local_94.st_blksize + -0x20000);" (assignment_expression "pcVar19 = (code *)(local_94.st_blksize + -0x20000)" identifier = (cast_expression "(code *)(local_94.st_blksize + -0x20000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94.st_blksize + -0x20000)" ( (binary_expression "local_94.st_blksize + -0x20000" (field_expression "local_94.st_blksize" identifier . field_identifier) + number_literal) )))) ;) (if_statement "if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }" if (parenthesized_expression "((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000))" ( (binary_expression "(code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)" (cast_expression "(code *)0x1ffe0000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (cast_expression "(code *)(local_94.st_blksize + -0x20000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94.st_blksize + -0x20000)" ( (binary_expression "local_94.st_blksize + -0x20000" (field_expression "local_94.st_blksize" identifier . field_identifier) + number_literal) )))) )) (compound_statement "{\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }" { (expression_statement "local_258 = FUN_00020000;" (assignment_expression "local_258 = FUN_00020000" identifier = identifier) ;) (expression_statement "local_25c = (code *)0x200;" (assignment_expression "local_25c = (code *)0x200" identifier = (cast_expression "(code *)0x200" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar19 = local_25c;" (assignment_expression "pcVar19 = local_25c" identifier = identifier) ;) (if_statement "if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }" if (parenthesized_expression "((code *)(local_94.st_blksize + -1) < (code *)0x20000000)" ( (binary_expression "(code *)(local_94.st_blksize + -1) < (code *)0x20000000" (cast_expression "(code *)(local_94.st_blksize + -1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94.st_blksize + -1)" ( (binary_expression "local_94.st_blksize + -1" (field_expression "local_94.st_blksize" identifier . field_identifier) + number_literal) ))) < (cast_expression "(code *)0x20000000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }" { (expression_statement "pcVar19 = (code *)local_94.st_blksize;" (assignment_expression "pcVar19 = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) (expression_statement "local_25c = (code *)local_94.st_blksize;" (assignment_expression "local_25c = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) })) })) (expression_statement "*(code **)(puVar29 + -4) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -4) = pcVar19" (pointer_expression "*(code **)(puVar29 + -4)" * (cast_expression "(code **)(puVar29 + -4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -8) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -8) = pcVar19" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 2;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 2" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x20) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x20) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x20)" * (cast_expression "(undefined1 **)(puVar29 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x17d28;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x17d28" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001d110();" (call_expression "FUN_0001d110()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_21c = (code *)(local_f4._16_4_ & 0xf000);" (assignment_expression "local_21c = (code *)(local_f4._16_4_ & 0xf000)" identifier = (cast_expression "(code *)(local_f4._16_4_ & 0xf000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_f4._16_4_ & 0xf000)" ( (binary_expression "local_f4._16_4_ & 0xf000" (field_expression "local_f4._16_4_" identifier . field_identifier) & number_literal) )))) ;) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (if_statement "if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }" if (parenthesized_expression "(local_21c == (code *)0x8000)" ( (binary_expression "local_21c == (code *)0x8000" identifier == (cast_expression "(code *)0x8000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }" { (expression_statement "uVar22 = local_c4 >> 0x1f & 0x1ff;" (assignment_expression "uVar22 = local_c4 >> 0x1f & 0x1ff" identifier = (binary_expression "local_c4 >> 0x1f & 0x1ff" (binary_expression "local_c4 >> 0x1f" identifier >> number_literal) & number_literal)) ;) (expression_statement "iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);" (assignment_expression "iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_)" identifier = (binary_expression "local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_)" identifier + (cast_expression "(uint)CARRY4(uVar22,local_f4._44_4_)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar22,local_f4._44_4_)" identifier (argument_list "(uVar22,local_f4._44_4_)" ( identifier , (field_expression "local_f4._44_4_" identifier . field_identifier) )))))) ;) (expression_statement "iVar8 = iVar10 >> 9;" (assignment_expression "iVar8 = iVar10 >> 9" identifier = (binary_expression "iVar10 >> 9" identifier >> number_literal)) ;) (expression_statement "uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));" (assignment_expression "uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" identifier = (call_expression "(uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" ( (binary_expression "local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000)" identifier < (parenthesized_expression "((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000)" ( (binary_expression "(uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000" (binary_expression "(uint)(local_f4._44_4_ + uVar22) >> 9" (call_expression "(uint)(local_f4._44_4_ + uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_f4._44_4_ + uVar22)" ( (binary_expression "local_f4._44_4_ + uVar22" (field_expression "local_f4._44_4_" identifier . field_identifier) + identifier) ))) >> number_literal) | (binary_expression "iVar10 * 0x800000" identifier * number_literal)) ))) )))) ;) (expression_statement "iVar10 = local_b8 - iVar8;" (assignment_expression "iVar10 = local_b8 - iVar8" identifier = (binary_expression "local_b8 - iVar8" identifier - identifier)) ;) (expression_statement "bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;" (assignment_expression "bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0" identifier = (binary_expression "(SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0" (parenthesized_expression "(SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22))" ( (binary_expression "SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)" (call_expression "SBORROW4(local_b8,iVar8)" identifier (argument_list "(local_b8,iVar8)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar10,uVar22)" identifier (argument_list "(iVar10,uVar22)" ( identifier , identifier )))) )) != (binary_expression "(int)(iVar10 - uVar22) < 0" (cast_expression "(int)(iVar10 - uVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar10 - uVar22)" ( (binary_expression "iVar10 - uVar22" identifier - identifier) ))) < number_literal))) ;) })) (expression_statement "local_220 = (code *)(uVar9 - 1);" (assignment_expression "local_220 = (code *)(uVar9 - 1)" identifier = (cast_expression "(code *)(uVar9 - 1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) )))) ;) (if_statement "if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" if (parenthesized_expression "((local_94.st_mode & 0xf000) == 0x8000)" ( (binary_expression "(local_94.st_mode & 0xf000) == 0x8000" (parenthesized_expression "(local_94.st_mode & 0xf000)" ( (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" { (if_statement "if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }" if (parenthesized_expression "(local_1f0[3] != 3)" ( (binary_expression "local_1f0[3] != 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }" { (if_statement "if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }" if (parenthesized_expression "((local_1f0[3] == 2) && (bVar3))" ( (binary_expression "(local_1f0[3] == 2) && (bVar3)" (parenthesized_expression "(local_1f0[3] == 2)" ( (binary_expression "local_1f0[3] == 2" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(bVar3)" ( identifier ))) )) (compound_statement "{\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }" { (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "local_258 + uVar9" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x199e0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x199e0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" identifier = (cast_expression "(code *)FUN_00022ed0()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" identifier = (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) - (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) % identifier))) ;) (goto_statement "goto LAB_000199fc;" goto statement_identifier ;) })) (goto_statement "goto LAB_00017d9d;" goto statement_identifier ;) })) (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "local_258 + uVar9" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f62;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f62" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" identifier = (cast_expression "(code *)FUN_00022ed0()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" identifier = (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) - (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) % identifier))) ;) (if_statement "if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }" { (labeled_statement "LAB_000199fc:\n                          local_274 = local_1f0[3];" statement_identifier : (expression_statement "local_274 = local_1f0[3];" (assignment_expression "local_274 = local_1f0[3]" identifier = (subscript_expression "local_1f0[3]" identifier [ number_literal ])) ;)) (expression_statement "local_285 = (byte)local_20c;" (assignment_expression "local_285 = (byte)local_20c" identifier = (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_00019a18;" goto statement_identifier ;) })) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" identifier = (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[3] == 3)" ( (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )))) ;) }) (else_clause "else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" else (compound_statement "{\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" { (labeled_statement "LAB_00017d9d:\n                        iVar10 = local_c0;" statement_identifier : (expression_statement "iVar10 = local_c0;" (assignment_expression "iVar10 = local_c0" identifier = identifier) ;)) (if_statement "if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }" if (parenthesized_expression "(0x1ffe0000 < local_c0 - 0x20000U)" ( (binary_expression "0x1ffe0000 < local_c0 - 0x20000U" number_literal < (binary_expression "local_c0 - 0x20000U" identifier - number_literal)) )) (compound_statement "{\n                          iVar10 = 0x20000;\n                        }" { (expression_statement "iVar10 = 0x20000;" (assignment_expression "iVar10 = 0x20000" identifier = number_literal) ;) })) (expression_statement "local_220 = (code *)(0x7fffffff - uVar9);" (assignment_expression "local_220 = (code *)(0x7fffffff - uVar9)" identifier = (cast_expression "(code *)(0x7fffffff - uVar9)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(0x7fffffff - uVar9)" ( (binary_expression "0x7fffffff - uVar9" number_literal - identifier) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x20000;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x20000" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);" (assignment_expression "*(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9)" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (cast_expression "(code *)(0x7fffffff - uVar9)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(0x7fffffff - uVar9)" ( (binary_expression "0x7fffffff - uVar9" number_literal - identifier) )))) ;) (expression_statement "*(code **)(puVar29 + -0xc) = local_258;" (assignment_expression "*(code **)(puVar29 + -0xc) = local_258" (pointer_expression "*(code **)(puVar29 + -0xc)" * (cast_expression "(code **)(puVar29 + -0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17dd4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17dd4" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar19 = (code *)FUN_0001c430();" (assignment_expression "pcVar19 = (code *)FUN_0001c430()" identifier = (cast_expression "(code *)FUN_0001c430()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001c430()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }" if (parenthesized_expression "((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258)))" ( (binary_expression "(local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))" (parenthesized_expression "(local_21c == (code *)0x8000)" ( (binary_expression "local_21c == (code *)0x8000" identifier == (cast_expression "(code *)0x8000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))" ( (binary_expression "local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258)" identifier < (cast_expression "(int)(uint)((uint)local_f4._44_4_ < local_258)" ( (type_descriptor "int" primitive_type) ) (call_expression "(uint)((uint)local_f4._44_4_ < local_258)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)local_f4._44_4_ < local_258)" ( (binary_expression "(uint)local_f4._44_4_ < local_258" (cast_expression "(uint)local_f4._44_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_f4._44_4_" identifier . field_identifier)) < identifier) ))))) ))) )) (compound_statement "{\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }" { (expression_statement "local_258 = (code *)(local_f4._44_4_ + 1);" (assignment_expression "local_258 = (code *)(local_f4._44_4_ + 1)" identifier = (cast_expression "(code *)(local_f4._44_4_ + 1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_f4._44_4_ + 1)" ( (binary_expression "local_f4._44_4_ + 1" (field_expression "local_f4._44_4_" identifier . field_identifier) + number_literal) )))) ;) })) (expression_statement "local_21c = pcVar19 + -1 + (int)local_258;" (assignment_expression "local_21c = pcVar19 + -1 + (int)local_258" identifier = (binary_expression "pcVar19 + -1 + (int)local_258" (binary_expression "pcVar19 + -1" identifier + number_literal) + (cast_expression "(int)local_258" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);" (assignment_expression "local_258 = local_21c + -((uint)local_21c % (uint)pcVar19)" identifier = (binary_expression "local_21c + -((uint)local_21c % (uint)pcVar19)" identifier + (unary_expression "-((uint)local_21c % (uint)pcVar19)" - (parenthesized_expression "((uint)local_21c % (uint)pcVar19)" ( (binary_expression "(uint)local_21c % (uint)pcVar19" (cast_expression "(uint)local_21c" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)pcVar19" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) ;) (if_statement "if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }" if (parenthesized_expression "((local_258 == (code *)0x0) || (local_220 < local_258))" ( (binary_expression "(local_258 == (code *)0x0) || (local_220 < local_258)" (parenthesized_expression "(local_258 == (code *)0x0)" ( (binary_expression "local_258 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(local_220 < local_258)" ( (binary_expression "local_220 < local_258" identifier < identifier) ))) )) (compound_statement "{\n                          local_258 = pcVar19;\n                        }" { (expression_statement "local_258 = pcVar19;" (assignment_expression "local_258 = pcVar19" identifier = identifier) ;) })) (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "local_258 + uVar9" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17e2e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17e2e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" identifier = (cast_expression "(code *)FUN_00022ed0()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" identifier = (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) - (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) % identifier))) ;) (if_statement "if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }" { (expression_statement "local_285 = '\0';" (assignment_expression "local_285 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_274 = 1;" (assignment_expression "local_274 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00019a18:\n                          pcVar19 = (code *)0x0;" statement_identifier : (expression_statement "pcVar19 = (code *)0x0;" (assignment_expression "pcVar19 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (expression_statement "local_21c = (code *)local_f4._44_4_;" (assignment_expression "local_21c = (code *)local_f4._44_4_" identifier = (cast_expression "(code *)local_f4._44_4_" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._44_4_" identifier . field_identifier))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = local_f4._44_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_f4._44_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_f4._44_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_f4._44_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_f4._44_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_f4._44_4_" identifier . field_identifier)) ;) (expression_statement "*(__ino_t **)(puVar29 + -0xc) = &local_1d4;" (assignment_expression "*(__ino_t **)(puVar29 + -0xc) = &local_1d4" (pointer_expression "*(__ino_t **)(puVar29 + -0xc)" * (cast_expression "(__ino_t **)(puVar29 + -0xc)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_218 = local_c4;" (assignment_expression "local_218 = local_c4" identifier = identifier) ;) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19a4e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19a4e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001a6d0();" (call_expression "FUN_0001a6d0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_254 = (code *)0x0;" (assignment_expression "local_254 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_250 = 0;" (assignment_expression "local_250 = 0" identifier = number_literal) ;) (expression_statement "local_24c = 0;" (assignment_expression "local_24c = 0" identifier = number_literal) ;) (expression_statement "local_248 = 0;" (assignment_expression "local_248 = 0" identifier = number_literal) ;) (expression_statement "local_280 = ppuVar28;" (assignment_expression "local_280 = ppuVar28" identifier = identifier) ;) (do_statement "do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');" do (compound_statement "{\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          }" { (expression_statement "*(__ino_t **)(puVar29 + -0x10) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x10) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x10)" * (cast_expression "(__ino_t **)(puVar29 + -0x10)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19a93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19a93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_0001a710();" (assignment_expression "uVar12 = FUN_0001a710()" identifier = (call_expression "FUN_0001a710()" identifier (argument_list "()" ( )))) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (if_statement "if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }" if (parenthesized_expression "((char)uVar12 == '\0')" ( (binary_expression "(char)uVar12 == '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }" { (expression_statement "uVar11 = extraout_ECX_10;" (assignment_expression "uVar11 = extraout_ECX_10" identifier = identifier) ;) (if_statement "if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }" if (parenthesized_expression "(local_1bf == '\0')" ( (binary_expression "local_1bf == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }" { (if_statement "if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }" if (parenthesized_expression "(local_1c0 == '\0')" ( (binary_expression "local_1c0 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a1b5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" identifier = (call_expression "FUN_00020700()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = ppuVar28 + -0x2aaf;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2aaf" identifier = (binary_expression "ppuVar28 + -0x2aaf" identifier + number_literal)) ;) (goto_statement "goto LAB_00019fe6;" goto statement_identifier ;) })) (expression_statement "pcVar19 = (code *)0x0;" (assignment_expression "pcVar19 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }" if (parenthesized_expression "(local_285 != '\0')" ( (binary_expression "local_285 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                  pcVar19 = local_25c;\n                                }" { (expression_statement "pcVar19 = local_25c;" (assignment_expression "pcVar19 = local_25c" identifier = identifier) ;) })) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" identifier = (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[3] == 3)" ( (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )))) ;) (expression_statement "local_25c = pcVar19;" (assignment_expression "local_25c = pcVar19" identifier = identifier) ;) (goto_statement "goto LAB_00017e78;" goto statement_identifier ;) })) (break_statement "break;" break ;) })) (if_statement "if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }" if (parenthesized_expression "(local_1c4 != (stat64 *)0x0)" ( (binary_expression "local_1c4 != (stat64 *)0x0" identifier != (cast_expression "(stat64 *)0x0" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }" { (expression_statement "local_234 = (stat64 *)0x0;" (assignment_expression "local_234 = (stat64 *)0x0" identifier = (cast_expression "(stat64 *)0x0" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_26c = pcVar19;" (assignment_expression "local_26c = pcVar19" identifier = identifier) ;) (expression_statement "local_264 = local_24c;" (assignment_expression "local_264 = local_24c" identifier = identifier) ;) (expression_statement "local_260 = local_248;" (assignment_expression "local_260 = local_248" identifier = identifier) ;) (expression_statement "local_268 = iVar10;" (assignment_expression "local_268 = iVar10" identifier = identifier) ;) (do_statement "do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);" do (compound_statement "{\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              }" { (expression_statement "puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);" (assignment_expression "puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14)" identifier = (cast_expression "(undefined4 *)(local_1bc + (int)local_234 * 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1bc + (int)local_234 * 0x14)" ( (binary_expression "local_1bc + (int)local_234 * 0x14" identifier + (binary_expression "(int)local_234 * 0x14" (cast_expression "(int)local_234" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "pcVar19 = (code *)*puVar37;" (assignment_expression "pcVar19 = (code *)*puVar37" identifier = (cast_expression "(code *)*puVar37" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar37" * identifier))) ;) (expression_statement "iVar10 = puVar37[1];" (assignment_expression "iVar10 = puVar37[1]" identifier = (subscript_expression "puVar37[1]" identifier [ number_literal ])) ;) (expression_statement "local_24c = puVar37[2];" (assignment_expression "local_24c = puVar37[2]" identifier = (subscript_expression "puVar37[2]" identifier [ number_literal ])) ;) (expression_statement "local_248 = puVar37[3];" (assignment_expression "local_248 = puVar37[3]" identifier = (subscript_expression "puVar37[3]" identifier [ number_literal ])) ;) (expression_statement "iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;" (assignment_expression "iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)" identifier = (binary_expression "puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)" (binary_expression "puVar37[3] + iVar10" (subscript_expression "puVar37[3]" identifier [ number_literal ]) + identifier) + (cast_expression "(uint)CARRY4(local_24c,(uint)pcVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_24c,(uint)pcVar19)" identifier (argument_list "(local_24c,(uint)pcVar19)" ( identifier , (cast_expression "(uint)pcVar19" ( (type_descriptor "uint" type_identifier) ) identifier) )))))) ;) (expression_statement "iVar8 = local_218 - iVar27;" (assignment_expression "iVar8 = local_218 - iVar27" identifier = (binary_expression "local_218 - iVar27" identifier - identifier)) ;) (if_statement "if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }" if (parenthesized_expression "((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0)" ( (binary_expression "(SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0" (parenthesized_expression "(SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c)))" ( (binary_expression "SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))" (call_expression "SBORROW4(local_218,iVar27)" identifier (argument_list "(local_218,iVar27)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))" identifier (argument_list "(iVar8,(uint)(local_21c < pcVar19 + local_24c))" ( identifier , (call_expression "(uint)(local_21c < pcVar19 + local_24c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19 + local_24c)" ( (binary_expression "local_21c < pcVar19 + local_24c" identifier < (binary_expression "pcVar19 + local_24c" identifier + identifier)) ))) )))) )) != (binary_expression "(int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0" (cast_expression "(int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar8 - (uint)(local_21c < pcVar19 + local_24c))" ( (binary_expression "iVar8 - (uint)(local_21c < pcVar19 + local_24c)" identifier - (call_expression "(uint)(local_21c < pcVar19 + local_24c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19 + local_24c)" ( (binary_expression "local_21c < pcVar19 + local_24c" identifier < (binary_expression "pcVar19 + local_24c" identifier + identifier)) )))) ))) < number_literal)) )) (compound_statement "{\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }" { (if_statement "if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }" if (parenthesized_expression "((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)" ( (binary_expression "(SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0" (parenthesized_expression "(SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19)))" ( (binary_expression "SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))" (call_expression "SBORROW4(local_218,iVar10)" identifier (argument_list "(local_218,iVar10)" ( identifier , identifier ))) != (call_expression "SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))" identifier (argument_list "(local_218 - iVar10,(uint)(local_21c < pcVar19))" ( (binary_expression "local_218 - iVar10" identifier - identifier) , (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19)" ( (binary_expression "local_21c < pcVar19" identifier < identifier) ))) )))) )) != (binary_expression "(int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0" (cast_expression "(int)((local_218 - iVar10) - (uint)(local_21c < pcVar19))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((local_218 - iVar10) - (uint)(local_21c < pcVar19))" ( (binary_expression "(local_218 - iVar10) - (uint)(local_21c < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" ( (binary_expression "local_218 - iVar10" identifier - identifier) )) - (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19)" ( (binary_expression "local_21c < pcVar19" identifier < identifier) )))) ))) < number_literal)) )) (compound_statement "{\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }" { (expression_statement "pcVar19 = local_21c;" (assignment_expression "pcVar19 = local_21c" identifier = identifier) ;) (expression_statement "iVar10 = local_218;" (assignment_expression "iVar10 = local_218" identifier = identifier) ;) })) (expression_statement "local_24c = (int)local_21c - (int)pcVar19;" (assignment_expression "local_24c = (int)local_21c - (int)pcVar19" identifier = (binary_expression "(int)local_21c - (int)pcVar19" (cast_expression "(int)local_21c" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);" (assignment_expression "local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19)" identifier = (binary_expression "(local_218 - iVar10) - (uint)(local_21c < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" ( (binary_expression "local_218 - iVar10" identifier - identifier) )) - (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19)" ( (binary_expression "local_21c < pcVar19" identifier < identifier) ))))) ;) })) (expression_statement "local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);" (assignment_expression "local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264)" identifier = (cast_expression "(code *)(((int)pcVar19 - (int)local_26c) - local_264)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)pcVar19 - (int)local_26c) - local_264)" ( (binary_expression "((int)pcVar19 - (int)local_26c) - local_264" (parenthesized_expression "((int)pcVar19 - (int)local_26c)" ( (binary_expression "(int)pcVar19 - (int)local_26c" (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_26c" ( (type_descriptor "int" primitive_type) ) identifier)) )) - identifier) )))) ;) (expression_statement "local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );" (assignment_expression "local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" identifier = (binary_expression "(((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (parenthesized_expression "(((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260)" ( (binary_expression "((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260" (parenthesized_expression "((iVar10 - local_268) - (uint)(pcVar19 < local_26c))" ( (binary_expression "(iVar10 - local_268) - (uint)(pcVar19 < local_26c)" (parenthesized_expression "(iVar10 - local_268)" ( (binary_expression "iVar10 - local_268" identifier - identifier) )) - (call_expression "(uint)(pcVar19 < local_26c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pcVar19 < local_26c)" ( (binary_expression "pcVar19 < local_26c" identifier < identifier) )))) )) - identifier) )) - (call_expression "(uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" ( (binary_expression "(uint)((int)pcVar19 - (int)local_26c) < local_264" (call_expression "(uint)((int)pcVar19 - (int)local_26c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pcVar19 - (int)local_26c)" ( (binary_expression "(int)pcVar19 - (int)local_26c" (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_26c" ( (type_descriptor "int" primitive_type) ) identifier)) ))) < identifier) ))))) ;) (expression_statement "local_20c = (byte *)((uint)local_20c & 0xffffff00);" (assignment_expression "local_20c = (byte *)((uint)local_20c & 0xffffff00)" identifier = (cast_expression "(byte *)((uint)local_20c & 0xffffff00)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_20c & 0xffffff00)" ( (binary_expression "(uint)local_20c & 0xffffff00" (cast_expression "(uint)local_20c" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }" if (parenthesized_expression "(local_250 != 0 || local_254 != (code *)0x0)" ( (binary_expression "local_250 != 0 || local_254 != (code *)0x0" (binary_expression "local_250 != 0" identifier != number_literal) || (binary_expression "local_254 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0xc) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -0xc) = pcVar19" (pointer_expression "*(code **)(puVar29 + -0xc)" * (cast_expression "(code **)(puVar29 + -0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ca8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ca8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "_Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));" (assignment_expression "_Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" identifier = (call_expression "lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" identifier (argument_list "(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" * (cast_expression "(__off64_t *)(puVar29 + -0xc)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) )))) ;) (if_statement "if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }" if (parenthesized_expression "(_Var41 < 0)" ( (binary_expression "_Var41 < 0" identifier < number_literal) )) (compound_statement "{\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f22;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f22" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b)" identifier = (cast_expression "(undefined **)((int)ppuVar28 + -0xb20b)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar28 + -0xb20b)" ( (binary_expression "(int)ppuVar28 + -0xb20b" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;" statement_identifier : (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" * (cast_expression "(undefined ***)(puVar29 + -0xc)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f37;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f37" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f3e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f3e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019f49;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019f49" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019f49" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }" if (parenthesized_expression "(local_274 == 1)" ( (binary_expression "local_274 == 1" identifier == number_literal) )) (compound_statement "{\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19d2c;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19d2c" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000149e0();" (assignment_expression "cVar6 = FUN_000149e0()" identifier = (call_expression "FUN_000149e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }" { (expression_statement "*(code **)(puVar29 + -4) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -4) = pcVar19" (pointer_expression "*(code **)(puVar29 + -4)" * (cast_expression "(code **)(puVar29 + -4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a193;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a193" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" identifier = (call_expression "FUN_00020700()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = ppuVar28 + -0x2c19;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2c19" identifier = (binary_expression "ppuVar28 + -0x2c19" identifier + number_literal)) ;) (goto_statement "goto LAB_00019f2f;" goto statement_identifier ;) })) (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00019af3;" goto statement_identifier ;) })) (expression_statement "*(int *)(puVar29 + -0xc) = local_250;" (assignment_expression "*(int *)(puVar29 + -0xc) = local_250" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x10) = local_254;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_254" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ce6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ce6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000150b0();" (assignment_expression "cVar6 = FUN_000150b0()" identifier = (call_expression "FUN_000150b0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6)" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,cVar6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,cVar6)" identifier (argument_list "(local_20c._1_3_,cVar6)" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (cVar6 != '\0') goto LAB_00019ae0;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019ae0;" goto statement_identifier ;)) (labeled_statement "LAB_00019cf7:\n                                  ppuVar28 = local_280;" statement_identifier : (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;)) (expression_statement "*(int *)(puVar29 + -0x10) = local_1bc;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_1bc" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d0d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d0d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00018028;" goto statement_identifier ;) })) (labeled_statement "LAB_00019ae0:\n                                pcVar24 = (code *)0x0;" statement_identifier : (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (if_statement "if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }" if (parenthesized_expression "(local_274 == 3)" ( (binary_expression "local_274 == 3" identifier == number_literal) )) (compound_statement "{\n                                  pcVar24 = local_25c;\n                                }" { (expression_statement "pcVar24 = local_25c;" (assignment_expression "pcVar24 = local_25c" identifier = identifier) ;) })) (labeled_statement "LAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;" statement_identifier : (expression_statement "*(undefined1 **)(puVar29 + -0x10) = &local_1dd;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = &local_1dd" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_1dd" & identifier)) ;)) (expression_statement "*(uint **)(puVar29 + -0x14) = &local_1dc;" (assignment_expression "*(uint **)(puVar29 + -0x14) = &local_1dc" (pointer_expression "*(uint **)(puVar29 + -0x14)" * (cast_expression "(uint **)(puVar29 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = (pointer_expression "&local_1dc" & identifier)) ;) (expression_statement "*(int *)(puVar29 + -0x18) = local_248;" (assignment_expression "*(int *)(puVar29 + -0x18) = local_248" (pointer_expression "*(int *)(puVar29 + -0x18)" * (cast_expression "(int *)(puVar29 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x1c) = local_24c;" (assignment_expression "*(uint *)(puVar29 + -0x1c) = local_24c" (pointer_expression "*(uint *)(puVar29 + -0x1c)" * (cast_expression "(uint *)(puVar29 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x24) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x24) = local_200" (pointer_expression "*(char **)(puVar29 + -0x24)" * (cast_expression "(char **)(puVar29 + -0x24)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(code **)(puVar29 + -0x2c) = pcVar24;" (assignment_expression "*(code **)(puVar29 + -0x2c) = pcVar24" (pointer_expression "*(code **)(puVar29 + -0x2c)" * (cast_expression "(code **)(puVar29 + -0x2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x30) = local_258;" (assignment_expression "*(code **)(puVar29 + -0x30) = local_258" (pointer_expression "*(code **)(puVar29 + -0x30)" * (cast_expression "(code **)(puVar29 + -0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19b3c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19b3c" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000151c0();" (assignment_expression "cVar6 = FUN_000151c0()" identifier = (call_expression "FUN_000151c0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 == '\0') goto LAB_00019cf7;" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019cf7;" goto statement_identifier ;)) (expression_statement "local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);" (assignment_expression "local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc)" identifier = (binary_expression "iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc)" (binary_expression "iVar10 + local_1d8" identifier + identifier) + (cast_expression "(uint)CARRY4((uint)pcVar19,local_1dc)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)pcVar19,local_1dc)" identifier (argument_list "((uint)pcVar19,local_1dc)" ( (cast_expression "(uint)pcVar19" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier )))))) ;) (expression_statement "local_254 = pcVar19 + local_1dc;" (assignment_expression "local_254 = pcVar19 + local_1dc" identifier = (binary_expression "pcVar19 + local_1dc" identifier + identifier)) ;) (expression_statement "uVar38 = (byte)local_20c;" (assignment_expression "uVar38 = (byte)local_20c" identifier = (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }" if (parenthesized_expression "(local_1d8 != 0 || local_1dc != 0)" ( (binary_expression "local_1d8 != 0 || local_1dc != 0" (binary_expression "local_1d8 != 0" identifier != number_literal) || (binary_expression "local_1dc != 0" identifier != number_literal)) )) (compound_statement "{\n                                  uVar38 = local_1dd;\n                                }" { (expression_statement "uVar38 = local_1dd;" (assignment_expression "uVar38 = local_1dd" identifier = identifier) ;) })) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38)" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,uVar38)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,uVar38)" identifier (argument_list "(local_20c._1_3_,uVar38)" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }" if (parenthesized_expression "(local_250 == local_218 && pcVar19 + local_1dc == local_21c)" ( (binary_expression "local_250 == local_218 && pcVar19 + local_1dc == local_21c" (binary_expression "local_250 == local_218" identifier == identifier) && (binary_expression "pcVar19 + local_1dc == local_21c" (binary_expression "pcVar19 + local_1dc" identifier + identifier) == identifier)) )) (compound_statement "{\n                                  local_1bf = '\x01';\n                                  break;\n                                }" { (expression_statement "local_1bf = '\x01';" (assignment_expression "local_1bf = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (break_statement "break;" break ;) })) (expression_statement "local_26c = pcVar19;" (assignment_expression "local_26c = pcVar19" identifier = identifier) ;) (expression_statement "local_234 = (stat64 *)((int)&local_234->st_dev + 1);" (assignment_expression "local_234 = (stat64 *)((int)&local_234->st_dev + 1)" identifier = (cast_expression "(stat64 *)((int)&local_234->st_dev + 1)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_dev + 1)" ( (binary_expression "(int)&local_234->st_dev + 1" (cast_expression "(int)&local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_dev" & (field_expression "local_234->st_dev" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "local_268 = iVar10;" (assignment_expression "local_268 = iVar10" identifier = identifier) ;) (expression_statement "local_264 = local_24c;" (assignment_expression "local_264 = local_24c" identifier = identifier) ;) (expression_statement "local_260 = local_248;" (assignment_expression "local_260 = local_248" identifier = identifier) ;) }) while (parenthesized_expression "(local_234 < local_1c4)" ( (binary_expression "local_234 < local_1c4" identifier < identifier) )) ;) })) (expression_statement "*(int *)(puVar29 + -0x10) = local_1bc;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_1bc" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1969a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1969a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "local_1bc = 0;" (assignment_expression "local_1bc = 0" identifier = number_literal) ;) (expression_statement "local_1c4 = (stat64 *)0x0;" (assignment_expression "local_1c4 = (stat64 *)0x0" identifier = (cast_expression "(stat64 *)0x0" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar11 = extraout_ECX_05;" (assignment_expression "uVar11 = extraout_ECX_05" identifier = identifier) ;) }) while (parenthesized_expression "(local_1bf == '\0')" ( (binary_expression "local_1bf == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (if_statement "if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }" if (parenthesized_expression "((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0)" ( (binary_expression "(SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0" (parenthesized_expression "(SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c)))" ( (binary_expression "SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))" (call_expression "SBORROW4(local_250,local_218)" identifier (argument_list "(local_250,local_218)" ( identifier , identifier ))) != (call_expression "SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))" identifier (argument_list "(local_250 - local_218,(uint)(local_254 < local_21c))" ( (binary_expression "local_250 - local_218" identifier - identifier) , (call_expression "(uint)(local_254 < local_21c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_254 < local_21c)" ( (binary_expression "local_254 < local_21c" identifier < identifier) ))) )))) )) == (binary_expression "(int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0" (cast_expression "(int)((local_250 - local_218) - (uint)(local_254 < local_21c))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((local_250 - local_218) - (uint)(local_254 < local_21c))" ( (binary_expression "(local_250 - local_218) - (uint)(local_254 < local_21c)" (parenthesized_expression "(local_250 - local_218)" ( (binary_expression "local_250 - local_218" identifier - identifier) )) - (call_expression "(uint)(local_254 < local_21c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_254 < local_21c)" ( (binary_expression "local_254 < local_21c" identifier < identifier) )))) ))) < number_literal)) )) (compound_statement "{\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }" { (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (if_statement "if ((byte)local_20c == '\0') goto LAB_00017ed4;" if (parenthesized_expression "((byte)local_20c == '\0')" ( (binary_expression "(byte)local_20c == '\0'" (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017ed4;" goto statement_identifier ;)) })) (if_statement "if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" if (parenthesized_expression "(local_274 == 1)" ( (binary_expression "local_274 == 1" identifier == number_literal) )) (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a279;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a279" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_000149e0();" (assignment_expression "iVar10 = FUN_000149e0()" identifier = (call_expression "FUN_000149e0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_14;" (assignment_expression "uVar11 = extraout_ECX_14" identifier = identifier) ;) (if_statement "if ((char)iVar10 == '\0') goto LAB_00019fca;" if (parenthesized_expression "((char)iVar10 == '\0')" ( (binary_expression "(char)iVar10 == '\0'" (cast_expression "(char)iVar10" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019fca;" goto statement_identifier ;)) }) (else_clause "else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" else (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = local_218;" (assignment_expression "*(int *)(puVar29 + -8) = local_218" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0xc) = local_21c;" (assignment_expression "*(code **)(puVar29 + -0xc) = local_21c" (pointer_expression "*(code **)(puVar29 + -0xc)" * (cast_expression "(code **)(puVar29 + -0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1971b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1971b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" identifier = (call_expression "ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" identifier (argument_list "(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" * (cast_expression "(__off64_t *)(puVar29 + -0xc)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "pcVar24 = local_21c;" (assignment_expression "pcVar24 = local_21c" identifier = identifier) ;) (expression_statement "pcVar19 = local_254;" (assignment_expression "pcVar19 = local_254" identifier = identifier) ;) (if_statement "if (iVar10 != 0) goto LAB_00019fca;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00019fca;" goto statement_identifier ;)) (expression_statement "uVar11 = extraout_ECX_06;" (assignment_expression "uVar11 = extraout_ECX_06" identifier = identifier) ;) (if_statement "if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }" if (parenthesized_expression "((local_274 == 3) && (bVar3))" ( (binary_expression "(local_274 == 3) && (bVar3)" (parenthesized_expression "(local_274 == 3)" ( (binary_expression "local_274 == 3" identifier == number_literal) )) && (parenthesized_expression "(bVar3)" ( identifier ))) )) (compound_statement "{\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = extraout_EDX_00;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = extraout_EDX_00" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar10 = local_250;" (assignment_expression "iVar10 = local_250" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = extraout_EDX_00;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = extraout_EDX_00" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);" (assignment_expression "*(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19)" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(local_218 - iVar10) - (uint)(pcVar24 < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" ( (binary_expression "local_218 - iVar10" identifier - identifier) )) - (call_expression "(uint)(pcVar24 < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pcVar24 < pcVar19)" ( (binary_expression "pcVar24 < pcVar19" identifier < identifier) ))))) ;) (expression_statement "*(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;" (assignment_expression "*(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "(int)pcVar24 - (int)pcVar19" (cast_expression "(int)pcVar24" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "*(int *)(puVar29 + -0x14) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x14) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x14)" * (cast_expression "(int *)(puVar29 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x18) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -0x18) = pcVar19" (pointer_expression "*(code **)(puVar29 + -0x18)" * (cast_expression "(code **)(puVar29 + -0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(puVar29 + -0x20) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x20) = local_228" (pointer_expression "*(int **)(puVar29 + -0x20)" * (cast_expression "(int **)(puVar29 + -0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1976c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1976c" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));" (assignment_expression "iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" identifier = (call_expression "fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" identifier (argument_list "(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" ( (pointer_expression "*(int *)(puVar29 + -0x20)" * (cast_expression "(int *)(puVar29 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0x18)" * (cast_expression "(__off64_t *)(puVar29 + -0x18)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0x10)" * (cast_expression "(__off64_t *)(puVar29 + -0x10)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (expression_statement "uVar11 = extraout_ECX_07;" (assignment_expression "uVar11 = extraout_ECX_07" identifier = identifier) ;) (if_statement "if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }" if (parenthesized_expression "(iVar8 < 0)" ( (binary_expression "iVar8 < 0" identifier < number_literal) )) (compound_statement "{\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1977c;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1977c" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_08;" (assignment_expression "uVar11 = extraout_ECX_08" identifier = identifier) ;) (if_statement "if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }" if (parenthesized_expression "((*piVar14 != 0x26) && (*piVar14 != 0x5f))" ( (binary_expression "(*piVar14 != 0x26) && (*piVar14 != 0x5f)" (parenthesized_expression "(*piVar14 != 0x26)" ( (binary_expression "*piVar14 != 0x26" (pointer_expression "*piVar14" * identifier) != number_literal) )) && (parenthesized_expression "(*piVar14 != 0x5f)" ( (binary_expression "*piVar14 != 0x5f" (pointer_expression "*piVar14" * identifier) != number_literal) ))) )) (compound_statement "{\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x197a1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x197a1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb1fb" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x197b6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x197b6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000197c1;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000197c1" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000197c1" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) })) }))) (goto_statement "goto LAB_00017ed4;" goto statement_identifier ;) })) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "local_25c = (code *)0x0;" (assignment_expression "local_25c = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" identifier = (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[3] == 3)" ( (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )))) ;) }))) (labeled_statement "LAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;" statement_identifier : (expression_statement "*(uint **)(puVar29 + -0x10) = &local_1dc;" (assignment_expression "*(uint **)(puVar29 + -0x10) = &local_1dc" (pointer_expression "*(uint **)(puVar29 + -0x10)" * (cast_expression "(uint **)(puVar29 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_1dc" & identifier)) ;)) (expression_statement "*(__ino_t **)(puVar29 + -0x14) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x14) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x14)" * (cast_expression "(__ino_t **)(puVar29 + -0x14)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x24) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x24) = local_200" (pointer_expression "*(char **)(puVar29 + -0x24)" * (cast_expression "(char **)(puVar29 + -0x24)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x28) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x28) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x28)" * (cast_expression "(uint *)(puVar29 + -0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x2c) = local_25c;" (assignment_expression "*(code **)(puVar29 + -0x2c) = local_25c" (pointer_expression "*(code **)(puVar29 + -0x2c)" * (cast_expression "(code **)(puVar29 + -0x2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x30) = local_258;" (assignment_expression "*(code **)(puVar29 + -0x30) = local_258" (pointer_expression "*(code **)(puVar29 + -0x30)" * (cast_expression "(code **)(puVar29 + -0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17ebc;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17ebc" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000151c0();" (assignment_expression "uVar12 = FUN_000151c0()" identifier = (call_expression "FUN_000151c0()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }" if (parenthesized_expression "((char)uVar12 != '\0')" ( (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }" { (expression_statement "uVar11 = extraout_ECX_00;" (assignment_expression "uVar11 = extraout_ECX_00" identifier = identifier) ;) (if_statement "if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }" if (parenthesized_expression "((char)local_1dc != '\0')" ( (binary_expression "(char)local_1dc != '\0'" (cast_expression "(char)local_1dc" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1d0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1d0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(__ino_t *)(puVar29 + -0xc) = local_1d4;" (assignment_expression "*(__ino_t *)(puVar29 + -0xc) = local_1d4" (pointer_expression "*(__ino_t *)(puVar29 + -0xc)" * (cast_expression "(__ino_t *)(puVar29 + -0xc)" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fbf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fbf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" identifier = (call_expression "ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" identifier (argument_list "(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" * (cast_expression "(__off64_t *)(puVar29 + -0xc)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "uVar11 = extraout_ECX_13;" (assignment_expression "uVar11 = extraout_ECX_13" identifier = identifier) ;) (if_statement "if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }" { (labeled_statement "LAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;" statement_identifier : (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fd9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fd9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053)" identifier = (cast_expression "(undefined **)((int)ppuVar28 + -0xb053)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar28 + -0xb053)" ( (binary_expression "(int)ppuVar28 + -0xb053" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;" statement_identifier : (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" * (cast_expression "(undefined ***)(puVar29 + -0xc)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fee" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ff5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ff5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a002;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a002" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001a002" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (goto_statement "goto LAB_00017ed4;" goto statement_identifier ;) })) (labeled_statement "LAB_000197c4:\n                      bVar25 = 0;" statement_identifier : (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_00018028;" goto statement_identifier ;) })) (labeled_statement "LAB_000194e2:\n                    local_220 = (code *)0x0;" statement_identifier : (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1f) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1f) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1f)" * (cast_expression "(char *)((int)local_1f0 + 0x1f)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1f)" ( (binary_expression "(int)local_1f0 + 0x1f" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" { (expression_statement "local_30 = local_174;" (assignment_expression "local_30 = local_174" identifier = identifier) ;) (expression_statement "local_2c = local_170;" (assignment_expression "local_2c = local_170" identifier = identifier) ;) (expression_statement "local_28 = local_16c;" (assignment_expression "local_28 = local_16c" identifier = identifier) ;) (expression_statement "local_24 = local_168;" (assignment_expression "local_24 = local_168" identifier = identifier) ;) (expression_statement "*(long *)(puVar29 + -4) = local_168;" (assignment_expression "*(long *)(puVar29 + -4) = local_168" (pointer_expression "*(long *)(puVar29 + -4)" * (cast_expression "(long *)(puVar29 + -4)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(__time_t **)(puVar29 + -8) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -8) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -8)" * (cast_expression "(__time_t **)(puVar29 + -8)" ( (type_descriptor "__time_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1988f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1988f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_000220c0();" (assignment_expression "iVar10 = FUN_000220c0()" identifier = (call_expression "FUN_000220c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_09;" (assignment_expression "uVar11 = extraout_ECX_09" identifier = identifier) ;) (if_statement "if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198a9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198a9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb03f" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198be;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198be" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198c5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198c5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000198d0;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000198d0" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000198d0" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) }))) (if_statement "if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1d) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" * (cast_expression "(char *)((int)local_1f0 + 0x1d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)))" ( (parenthesized_expression "(local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))" ( (binary_expression "local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)" (binary_expression "local_1b4._24_4_ != local_94.st_uid" (field_expression "local_1b4._24_4_" identifier . field_identifier) != (field_expression "local_94.st_uid" identifier . field_identifier)) || (parenthesized_expression "(local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)" ( (comma_expression "local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid" (assignment_expression "local_94.st_uid = local_94.st_gid" (field_expression "local_94.st_uid" identifier . field_identifier) = (field_expression "local_94.st_gid" identifier . field_identifier)) , (binary_expression "local_1b4._28_4_ != local_94.st_gid" (field_expression "local_1b4._28_4_" identifier . field_identifier) != (field_expression "local_94.st_gid" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }" { (expression_statement "*(__uid_t *)(puVar29 + -4) = local_94.st_uid;" (assignment_expression "*(__uid_t *)(puVar29 + -4) = local_94.st_uid" (pointer_expression "*(__uid_t *)(puVar29 + -4)" * (cast_expression "(__uid_t *)(puVar29 + -4)" ( (type_descriptor "__uid_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_94.st_uid" identifier . field_identifier)) ;) (expression_statement "uVar9 = (uint)local_1f4 & 0xff;" (assignment_expression "uVar9 = (uint)local_1f4 & 0xff" identifier = (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "*(stat64 **)(puVar29 + -8) = local_240;" (assignment_expression "*(stat64 **)(puVar29 + -8) = local_240" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17f33;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17f33" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00015b60();" (assignment_expression "iVar10 = FUN_00015b60()" identifier = (call_expression "FUN_00015b60()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == -1) goto LAB_000197c4;" if (parenthesized_expression "(iVar10 == -1)" ( (binary_expression "iVar10 == -1" identifier == number_literal) )) (goto_statement "goto LAB_000197c4;" goto statement_identifier ;)) (expression_statement "uVar11 = extraout_ECX_01;" (assignment_expression "uVar11 = extraout_ECX_01" identifier = identifier) ;) (if_statement "if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                        local_244 = local_244 & 0xfffff1ff;\n                      }" { (expression_statement "local_244 = local_244 & 0xfffff1ff;" (assignment_expression "local_244 = local_244 & 0xfffff1ff" identifier = (binary_expression "local_244 & 0xfffff1ff" identifier & number_literal)) ;) })) })) (if_statement "if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x27) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" * (cast_expression "(char *)((int)local_1f0 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x27)" ( (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0001950b:\n                      bVar25 = 1;\n                    }" { (labeled_statement "LAB_0001950b:\n                      bVar25 = 1;" statement_identifier : (expression_statement "bVar25 = 1;" (assignment_expression "bVar25 = 1" identifier = number_literal) ;)) }) (else_clause "else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" else (compound_statement "{\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" { (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" if (parenthesized_expression "((local_94.st_mode & 0x80) == 0)" ( (binary_expression "(local_94.st_mode & 0x80) == 0" (parenthesized_expression "(local_94.st_mode & 0x80)" ( (binary_expression "local_94.st_mode & 0x80" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19e80;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19e80" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = (int *)geteuid();" (assignment_expression "piVar14 = (int *)geteuid()" identifier = (cast_expression "(int *)geteuid()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "geteuid()" identifier (argument_list "()" ( ))))) ;) (expression_statement "piVar23 = local_228;" (assignment_expression "piVar23 = local_228" identifier = identifier) ;) (if_statement "if (piVar14 == (int *)0x0) goto LAB_00017f67;" if (parenthesized_expression "(piVar14 == (int *)0x0)" ( (binary_expression "piVar14 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00017f67;" goto statement_identifier ;)) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19ea0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19ea0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00014ac0();" (assignment_expression "iVar10 = FUN_00014ac0()" identifier = (call_expression "FUN_00014ac0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);" (assignment_expression "uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0)" identifier = (call_expression "CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0)" identifier (argument_list "((int3)((uint)iVar10 >> 8),iVar10 == 0)" ( (call_expression "(int3)((uint)iVar10 >> 8)" (parenthesized_expression "(int3)" ( identifier )) (argument_list "((uint)iVar10 >> 8)" ( (binary_expression "(uint)iVar10 >> 8" (cast_expression "(uint)iVar10" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , (binary_expression "iVar10 == 0" identifier == number_literal) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = piVar23;" (assignment_expression "*(int **)(puVar29 + -0x10) = piVar23" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ec7;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ec7" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar25 = FUN_00014b00();" (assignment_expression "bVar25 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_12;" (assignment_expression "uVar11 = extraout_ECX_12" identifier = identifier) ;) (if_statement "if (bVar25 == 0) goto LAB_00017f99;" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00017f99;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" else (compound_statement "{\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" { (labeled_statement "LAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;" statement_identifier : (expression_statement "*(int **)(puVar29 + -4) = piVar14;" (assignment_expression "*(int **)(puVar29 + -4) = piVar14" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(int **)(puVar29 + -8) = piVar14;" (assignment_expression "*(int **)(puVar29 + -8) = piVar14" (pointer_expression "*(int **)(puVar29 + -8)" * (cast_expression "(int **)(puVar29 + -8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17f8c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17f8c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_00014b00();" (assignment_expression "uVar12 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_02;" (assignment_expression "uVar11 = extraout_ECX_02" identifier = identifier) ;) (if_statement "if ((char)uVar12 != '\0') goto LAB_0001950b;" if (parenthesized_expression "((char)uVar12 != '\0')" ( (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001950b;" goto statement_identifier ;)) (labeled_statement "LAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));" statement_identifier : (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" identifier (argument_list "(local_20c._1_3_,*(byte *)(local_1f0 + 10))" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 10)" * (cast_expression "(byte *)(local_1f0 + 10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 10)" ( (binary_expression "local_1f0 + 10" identifier + number_literal) )))) ))))) ;)) (expression_statement "bVar25 = *(byte *)(local_1f0 + 10) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 10) ^ 1" identifier = (binary_expression "*(byte *)(local_1f0 + 10) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 10)" * (cast_expression "(byte *)(local_1f0 + 10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 10)" ( (binary_expression "local_1f0 + 10" identifier + number_literal) )))) ^ number_literal)) ;) }))) (if_statement "if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }" if (parenthesized_expression "((char)uVar12 != '\0')" ( (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x17fd3;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x17fd3" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014ac0();" (call_expression "FUN_00014ac0()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = extraout_ECX_03;" (assignment_expression "uVar11 = extraout_ECX_03" identifier = identifier) ;) })) }))) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1e) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1e)" * (cast_expression "(char *)((int)local_1f0 + 0x1e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1e)" ( (binary_expression "(int)local_1f0 + 0x1e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }" { (if_statement "if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" * (cast_expression "(char *)((int)local_1f0 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2b)" ( (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }" { (expression_statement "bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);" (assignment_expression "bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8)" identifier = (binary_expression "(byte)local_1f4 & *(byte *)(local_1f0 + 8)" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) & (pointer_expression "*(byte *)(local_1f0 + 8)" * (cast_expression "(byte *)(local_1f0 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 8)" ( (binary_expression "local_1f0 + 8" identifier + number_literal) )))))) ;) (if_statement "if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" if (parenthesized_expression "(bVar40 == 0)" ( (binary_expression "bVar40 == 0" identifier == number_literal) )) (compound_statement "{\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }" { (if_statement "if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }" if (parenthesized_expression "(local_278 != 0)" ( (binary_expression "local_278 != 0" identifier != number_literal) )) (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a00f;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a00f" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar9 = FUN_00015d90();" (assignment_expression "uVar9 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }" if (parenthesized_expression "((local_278 & ~uVar9) != 0)" ( (binary_expression "(local_278 & ~uVar9) != 0" (parenthesized_expression "(local_278 & ~uVar9)" ( (binary_expression "local_278 & ~uVar9" identifier & (unary_expression "~uVar9" ~ identifier)) )) != number_literal) )) (compound_statement "{\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a034;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a034" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00014ac0();" (assignment_expression "iVar10 = FUN_00014ac0()" identifier = (call_expression "FUN_00014ac0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a04b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a04b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_21c = (code *)FUN_00020540();" (assignment_expression "local_21c = (code *)FUN_00020540()" identifier = (cast_expression "(code *)FUN_00020540()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb027" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a064;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a064" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_20c = (byte *)dcgettext();" (assignment_expression "local_20c = (byte *)dcgettext()" identifier = (cast_expression "(byte *)dcgettext()" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a06f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a06f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x14) = local_21c;" (assignment_expression "*(code **)(puVar29 + -0x14) = local_21c" (pointer_expression "*(code **)(puVar29 + -0x14)" * (cast_expression "(code **)(puVar29 + -0x14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(byte **)(puVar29 + -0x18) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x18) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x18)" * (cast_expression "(byte **)(puVar29 + -0x18)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a086;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a086" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001a086" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) })) }) (else_clause "else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" else (compound_statement "{\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" { (expression_statement "local_20c = (byte *)((uint)local_20c & 0xffffff00);" (assignment_expression "local_20c = (byte *)((uint)local_20c & 0xffffff00)" identifier = (cast_expression "(byte *)((uint)local_20c & 0xffffff00)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_20c & 0xffffff00)" ( (binary_expression "(uint)local_20c & 0xffffff00" (cast_expression "(uint)local_20c" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a1d2;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a1d2" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar42 = FUN_00015d90();" (assignment_expression "uVar42 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);" (assignment_expression "*(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20)" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (cast_expression "(int)((ulonglong)uVar42 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar42 >> 0x20)" ( (binary_expression "(ulonglong)uVar42 >> 0x20" (cast_expression "(ulonglong)uVar42" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "*(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;" (assignment_expression "*(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (binary_expression "~(uint)uVar42 & 0x1b6" (unary_expression "~(uint)uVar42" ~ (cast_expression "(uint)uVar42" ( (type_descriptor "uint" type_identifier) ) identifier)) & number_literal)) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a1ec" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" identifier = (call_expression "FUN_0001b7d0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar40)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,bVar40)" identifier (argument_list "(local_1f4._1_3_,bVar40)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                            bVar25 = (byte)local_20c;\n                          }" { (expression_statement "bVar25 = (byte)local_20c;" (assignment_expression "bVar25 = (byte)local_20c" identifier = (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) })) }))) }) (else_clause "else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" else (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = piVar14[4];" (assignment_expression "*(int *)(puVar29 + -8) = piVar14[4]" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (subscript_expression "piVar14[4]" identifier [ number_literal ])) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0e8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" identifier = (call_expression "FUN_0001b7d0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                          bVar25 = 0;\n                        }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) })) }))) }) (else_clause "else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" else (compound_statement "{\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" { (expression_statement "*(uint *)(puVar29 + -0x10) = local_244;" (assignment_expression "*(uint *)(puVar29 + -0x10) = local_244" (pointer_expression "*(uint *)(puVar29 + -0x10)" * (cast_expression "(uint *)(puVar29 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x14) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x14) = local_228" (pointer_expression "*(int **)(puVar29 + -0x14)" * (cast_expression "(int **)(puVar29 + -0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x18) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x18) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x18)" * (cast_expression "(char **)(puVar29 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x1c) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x1c) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x1c)" * (cast_expression "(undefined1 **)(puVar29 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1961d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1961d" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b720();" (assignment_expression "iVar10 = FUN_0001b720()" identifier = (call_expression "FUN_0001b720()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }" if (parenthesized_expression "((iVar10 != 0) && ((char)local_1f0[9] != '\0'))" ( (binary_expression "(iVar10 != 0) && ((char)local_1f0[9] != '\0')" (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) && (parenthesized_expression "((char)local_1f0[9] != '\0')" ( (binary_expression "(char)local_1f0[9] != '\0'" (cast_expression "(char)local_1f0[9]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[9]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                        bVar25 = 0;\n                      }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) })) }))) (goto_statement "goto LAB_00018028;" goto statement_identifier ;) })) }) (else_clause "else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" else (compound_statement "{\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" { (expression_statement "iVar10 = 0x15;" (assignment_expression "iVar10 = 0x15" identifier = number_literal) ;) (if_statement "if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }" if (parenthesized_expression "(*local_1f8 != '\0')" ( (binary_expression "*local_1f8 != '\0'" (pointer_expression "*local_1f8" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }" { (expression_statement "uVar9 = 0xffffffff;" (assignment_expression "uVar9 = 0xffffffff" identifier = number_literal) ;) (expression_statement "pcVar20 = local_1f8;" (assignment_expression "pcVar20 = local_1f8" identifier = identifier) ;) (do_statement "do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');" do (compound_statement "{\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    }" { (if_statement "if (uVar9 == 0) break;" if (parenthesized_expression "(uVar9 == 0)" ( (binary_expression "uVar9 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar9 = uVar9 - 1;" (assignment_expression "uVar9 = uVar9 - 1" identifier = (binary_expression "uVar9 - 1" identifier - number_literal)) ;) (expression_statement "cVar6 = *pcVar20;" (assignment_expression "cVar6 = *pcVar20" identifier = (pointer_expression "*pcVar20" * identifier)) ;) (expression_statement "pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;" (assignment_expression "pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pcVar20 + (uint)bVar40 * -2 + 1" (binary_expression "pcVar20 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;" (assignment_expression "iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14" identifier = (binary_expression "(local_1f8[~uVar9 - 2] != '/') + 0x14" (parenthesized_expression "(local_1f8[~uVar9 - 2] != '/')" ( (binary_expression "local_1f8[~uVar9 - 2] != '/'" (subscript_expression "local_1f8[~uVar9 - 2]" identifier [ (binary_expression "~uVar9 - 2" (unary_expression "~uVar9" ~ identifier) - number_literal) ]) != (char_literal "'/'" ' character ')) )) + number_literal)) ;) })) }))) }) (else_clause "else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" else (compound_statement "{\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" { (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" identifier (argument_list "(local_1f4._1_3_,(char)local_1f0[6])" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) ))))) ;) (if_statement "if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }" { (expression_statement "*(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);" (assignment_expression "*(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25)" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (call_expression "CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25)" identifier (argument_list "((int3)((uint)extraout_EDX >> 8),bVar25)" ( (call_expression "(int3)((uint)extraout_EDX >> 8)" (parenthesized_expression "(int3)" ( identifier )) (argument_list "((uint)extraout_EDX >> 8)" ( (binary_expression "(uint)extraout_EDX >> 8" (cast_expression "(uint)extraout_EDX" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , identifier )))) ;) (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x193f6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x193f6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }" if (parenthesized_expression "((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000))" ( (binary_expression "(iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)" (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) && (parenthesized_expression "((local_94.st_mode & 0xf000) == 0xa000)" ( (binary_expression "(local_94.st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_94.st_mode & 0xf000)" ( (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }" { (expression_statement "uVar9 = (uint)*(byte *)(local_1f0 + 0xc);" (assignment_expression "uVar9 = (uint)*(byte *)(local_1f0 + 0xc)" identifier = (binary_expression "(uint)*(byte *)(local_1f0 + 0xc)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_1f0 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 0xc)" ( (binary_expression "local_1f0 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }" if (parenthesized_expression "(*(byte *)(local_1f0 + 0xc) == 0)" ( (binary_expression "*(byte *)(local_1f0 + 0xc) == 0" (pointer_expression "*(byte *)(local_1f0 + 0xc)" * (cast_expression "(byte *)(local_1f0 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 0xc)" ( (binary_expression "local_1f0 + 0xc" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }" { (expression_statement "*(uint *)(puVar29 + -4) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -4) = uVar9" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -8) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -8) = uVar9" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a217;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a217" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""not writing through dangling symlink %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a22c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a22c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a237;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a237" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001a237" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(uint *)(puVar29 + -4) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -4) = uVar9" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -8) = local_21c;" (assignment_expression "*(code **)(puVar29 + -8) = local_21c" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0x41;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0x41" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19434;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19434" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_228 = (int *)FUN_0001d190();" (assignment_expression "local_228 = (int *)FUN_0001d190()" identifier = (cast_expression "(int *)FUN_0001d190()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (expression_statement "iVar10 = *(int *)local_220;" (assignment_expression "iVar10 = *(int *)local_220" identifier = (pointer_expression "*(int *)local_220" * (cast_expression "(int *)local_220" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) })) (goto_statement "goto LAB_00019445;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19126;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19126" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create regular file %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create regular file %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot create regular file %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1913b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1913b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (labeled_statement "LAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;)) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018b7c" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018b7c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;" (assignment_expression "*(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201" (parenthesized_expression "(-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00)" ( (binary_expression "-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00" (unary_expression "-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0')" - (call_expression "(uint)(*(char *)((int)local_1f0 + 0x23) == '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(char *)((int)local_1f0 + 0x23) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x23) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x23)" * (cast_expression "(char *)((int)local_1f0 + 0x23)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x23)" ( (binary_expression "(int)local_1f0 + 0x23" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )))) & number_literal) )) + number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17c4d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17c4d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_228 = (int *)FUN_0001d190();" (assignment_expression "local_228 = (int *)FUN_0001d190()" identifier = (cast_expression "(int *)FUN_0001d190()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (expression_statement "piVar23 = local_1f0;" (assignment_expression "piVar23 = local_1f0" identifier = identifier) ;) (if_statement "if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" if (parenthesized_expression "((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               )" ( (binary_expression "(*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')" (parenthesized_expression "(*(char *)((int)piVar14 + 0x21) == '\0')" ( (binary_expression "*(char *)((int)piVar14 + 0x21) == '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x21)" * (cast_expression "(char *)((int)piVar14 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x21)" ( (binary_expression "(int)piVar14 + 0x21" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)piVar14 + 0x25) == '\0')" ( (binary_expression "*(char *)((int)piVar14 + 0x25) == '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x25)" * (cast_expression "(char *)((int)piVar14 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x25)" ( (binary_expression "(int)piVar14 + 0x25" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }" { (if_statement "if (-1 < (int)local_228) goto LAB_00017c77;" if (parenthesized_expression "(-1 < (int)local_228)" ( (binary_expression "-1 < (int)local_228" number_literal < (cast_expression "(int)local_228" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00017c77;" goto statement_identifier ;)) (labeled_statement "LAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19270;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19270" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "piVar23 = __errno_location();" (assignment_expression "piVar23 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x16) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x16) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x16)" * (cast_expression "(char *)((int)local_1f0 + 0x16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }" { (expression_statement "iVar10 = *piVar23;" (assignment_expression "iVar10 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (if_statement "if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }" if (parenthesized_expression "((iVar10 == 2) && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(iVar10 == 2) && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(iVar10 == 2)" ( (binary_expression "iVar10 == 2" identifier == number_literal) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }" { (expression_statement "local_278 = 0;" (assignment_expression "local_278 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_000190a0;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" ( (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (goto_statement "goto LAB_00019116;" goto statement_identifier ;) })) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19290;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19290" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = unlink(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = unlink(*(char **)(puVar29 + -0x10))" identifier = (call_expression "unlink(*(char **)(puVar29 + -0x10))" identifier (argument_list "(*(char **)(puVar29 + -0x10))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }" { (expression_statement "*(int **)(puVar29 + -4) = piVar14;" (assignment_expression "*(int **)(puVar29 + -4) = piVar14" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -8) = piVar14;" (assignment_expression "*(int **)(puVar29 + -8) = piVar14" (pointer_expression "*(int **)(puVar29 + -8)" * (cast_expression "(int **)(puVar29 + -8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a104;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a104" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot remove %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot remove %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot remove %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a119;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a119" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar23;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar23" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar23" * identifier)) ;) (goto_statement "goto LAB_00018b73;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = extraout_ECX_04;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = extraout_ECX_04" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = extraout_ECX_04;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = extraout_ECX_04" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0aa" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "removed %s\n";" (assignment_expression "*(char **)(puVar29 + -0xc) = "removed %s\n"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""removed %s\n"" " string_content escape_sequence ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0bf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0cb" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_278 = local_23c;" (assignment_expression "local_278 = local_23c" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000190a0;" goto statement_identifier ;)) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_284;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_284" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x192f1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x192f1" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') goto LAB_00019094;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019094;" goto statement_identifier ;)) (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" else (compound_statement "{\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" { (if_statement "if ((int)local_228 < 0) goto LAB_0001926b;" if (parenthesized_expression "((int)local_228 < 0)" ( (binary_expression "(int)local_228 < 0" (cast_expression "(int)local_228" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_0001926b;" goto statement_identifier ;)) (expression_statement "bVar40 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar40 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)bVar40;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)bVar40" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1952e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1952e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00015960();" (assignment_expression "cVar6 = FUN_00015960()" identifier = (call_expression "FUN_00015960()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }" { (labeled_statement "LAB_00017c77:\n                local_278 = 0;" statement_identifier : (expression_statement "local_278 = 0;" (assignment_expression "local_278 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_00017c81;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)piVar23 + 0x26)" * (cast_expression "(char *)((int)piVar23 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar23 + 0x26)" ( (binary_expression "(int)piVar23 + 0x26" (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (if_statement "if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;" if (parenthesized_expression "(*(char *)((int)piVar23 + 0x26) == '\0')" ( (binary_expression "*(char *)((int)piVar23 + 0x26) == '\0'" (pointer_expression "*(char *)((int)piVar23 + 0x26)" * (cast_expression "(char *)((int)piVar23 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar23 + 0x26)" ( (binary_expression "(int)piVar23 + 0x26" (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017c77;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4._1_3_ << 8)" identifier = (cast_expression "(char *)((uint)local_1f4._1_3_ << 8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4._1_3_ << 8)" ( (binary_expression "(uint)local_1f4._1_3_ << 8" (cast_expression "(uint)local_1f4._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_1f4._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;" statement_identifier : (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18036;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18036" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = close(*(int *)(puVar29 + -0x10));" (assignment_expression "iVar10 = close(*(int *)(puVar29 + -0x10))" identifier = (call_expression "close(*(int *)(puVar29 + -0x10))" identifier (argument_list "(*(int *)(puVar29 + -0x10))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1964e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1964e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb009" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19663;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19663" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1966a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1966a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019677;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019677" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019677" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) }))) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18056;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18056" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = close(*(int *)(puVar29 + -0x10));" (assignment_expression "iVar10 = close(*(int *)(puVar29 + -0x10))" identifier = (call_expression "close(*(int *)(puVar29 + -0x10))" identifier (argument_list "(*(int *)(puVar29 + -0x10))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e7e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e7e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb009" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e9a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e9a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018ea5" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018ea5" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(code **)(puVar29 + -0x10) = local_220;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_220" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1806f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1806f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "bVar40 = bVar25;" (assignment_expression "bVar40 = bVar25" identifier = identifier) ;) (goto_statement "goto joined_r0x00018387;" goto statement_identifier ;) })) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (if_statement "if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" if (parenthesized_expression "(local_238 == (stat64 *)0x1000)" ( (binary_expression "local_238 == (stat64 *)0x1000" identifier == (cast_expression "(stat64 *)0x1000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }" { (expression_statement "local_94.st_dev._0_4_ = (byte *)0x0;" (assignment_expression "local_94.st_dev._0_4_ = (byte *)0x0" (field_expression "local_94.st_dev._0_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_94.st_dev._4_4_ = 0;" (assignment_expression "local_94.st_dev._4_4_ = 0" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "uVar9 = ~local_23c & local_204;" (assignment_expression "uVar9 = ~local_23c & local_204" identifier = (binary_expression "~local_23c & local_204" (unary_expression "~local_23c" ~ identifier) & identifier)) ;) (expression_statement "*(stat64 **)(puVar29 + -4) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -4) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -4)" * (cast_expression "(stat64 **)(puVar29 + -4)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(uint *)(puVar29 + -8) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -8) = uVar9" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18dbe;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18dbe" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));" (assignment_expression "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier = (call_expression "__xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -8)" * (cast_expression "(__mode_t *)(puVar29 + -8)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) , (pointer_expression "*(__dev_t **)(puVar29 + -4)" * (cast_expression "(__dev_t **)(puVar29 + -4)" ( (type_descriptor "__dev_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) )))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }" { (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "uVar9 & 0xffffefff" identifier & number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18de5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18de5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier = (call_expression "mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0xc)" * (cast_expression "(__mode_t *)(puVar29 + -0xc)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e07;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e07" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot create fifo %s";" (assignment_expression "pcVar20 = "cannot create fifo %s"" identifier = (string_literal ""cannot create fifo %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) })) }) (else_clause "else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" else (if_statement "if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" if (parenthesized_expression "(((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000)" ( (binary_expression "((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000" (binary_expression "((uint)local_238 & 0xffffbfff) == 0x2000" (parenthesized_expression "((uint)local_238 & 0xffffbfff)" ( (binary_expression "(uint)local_238 & 0xffffbfff" (cast_expression "(uint)local_238" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) || (binary_expression "local_238 == (stat64 *)0xc000" identifier == (cast_expression "(stat64 *)0xc000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }" { (expression_statement "local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;" (assignment_expression "local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_" (field_expression "local_94.st_dev._0_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = (cast_expression "(byte *)local_1b4._32_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._32_4_" identifier . field_identifier))) ;) (expression_statement "*(stat64 **)(puVar29 + -4) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -4) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -4)" * (cast_expression "(stat64 **)(puVar29 + -4)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "local_94.st_dev._4_4_ = local_190;" (assignment_expression "local_94.st_dev._4_4_ = local_190" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -8) = ~local_23c & local_204;" (assignment_expression "*(uint *)(puVar29 + -8) = ~local_23c & local_204" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (binary_expression "~local_23c & local_204" (unary_expression "~local_23c" ~ identifier) & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16f59;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16f59" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));" (assignment_expression "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier = (call_expression "__xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -8)" * (cast_expression "(__mode_t *)(puVar29 + -8)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) , (pointer_expression "*(__dev_t **)(puVar29 + -4)" * (cast_expression "(__dev_t **)(puVar29 + -4)" ( (type_descriptor "__dev_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) )))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16f7c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16f7c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot create special file %s";" (assignment_expression "pcVar20 = "cannot create special file %s"" identifier = (string_literal ""cannot create special file %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) }) (else_clause "else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" else (compound_statement "{\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" { (if_statement "if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }" if (parenthesized_expression "(local_238 != (stat64 *)0xa000)" ( (binary_expression "local_238 != (stat64 *)0xa000" identifier != (cast_expression "(stat64 *)0xa000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e30;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e30" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "%s has unknown file type";" (assignment_expression "pcVar20 = "%s has unknown file type"" identifier = (string_literal ""%s has unknown file type"" " string_content ")) ;) (goto_statement "goto LAB_00016e8b;" goto statement_identifier ;) })) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = local_188;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = local_188" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a38;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a38" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = (char *)FUN_0001b850();" (assignment_expression "pcVar20 = (char *)FUN_0001b850()" identifier = (cast_expression "(char *)FUN_0001b850()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001b850()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "(pcVar20 == (char *)0x0)" ( (binary_expression "pcVar20 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x194d0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x194d0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot read symbolic link %s";" (assignment_expression "pcVar20 = "cannot read symbolic link %s"" identifier = (string_literal ""cannot read symbolic link %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) (expression_statement "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);" (assignment_expression "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16)" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (binary_expression "(uint)*(byte *)((int)local_1f0 + 0x16)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)((int)local_1f0 + 0x16)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a5e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a5e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001ade0();" (assignment_expression "iVar10 = FUN_0001ade0()" identifier = (call_expression "FUN_0001ade0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19315;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19315" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_208 = (undefined1 *)*piVar14;" (assignment_expression "local_208 = (undefined1 *)*piVar14" identifier = (cast_expression "(undefined1 *)*piVar14" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (if_statement "if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;" if (parenthesized_expression "((undefined1 *)*piVar14 == (undefined1 *)0x0)" ( (binary_expression "(undefined1 *)*piVar14 == (undefined1 *)0x0" (cast_expression "(undefined1 *)*piVar14" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier)) == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00018a69;" goto statement_identifier ;)) (if_statement "if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }" if (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000))" ( (binary_expression "((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2d) != '\x01')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2d) != '\x01'" (pointer_expression "*(char *)((int)local_1f0 + 0x2d)" * (cast_expression "(char *)((int)local_1f0 + 0x2d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2d)" ( (binary_expression "(int)local_1f0 + 0x2d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\x01'" ' escape_sequence ')) )) || (parenthesized_expression "((byte)local_1f4 != '\0')" ( (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "((local_154.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_154.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }" { (labeled_statement "LAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19347;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19347" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19356;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19356" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot create symbolic link %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1936b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1936b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x1c) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x1c) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x1c)" * (cast_expression "(undefined1 **)(puVar29 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001937a;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001937a" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001937a" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "uVar9 = 0xffffffff;" (assignment_expression "uVar9 = 0xffffffff" identifier = number_literal) ;) (expression_statement "pcVar18 = pcVar20;" (assignment_expression "pcVar18 = pcVar20" identifier = identifier) ;) (do_statement "do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');" do (compound_statement "{\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              }" { (if_statement "if (uVar9 == 0) break;" if (parenthesized_expression "(uVar9 == 0)" ( (binary_expression "uVar9 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar9 = uVar9 - 1;" (assignment_expression "uVar9 = uVar9 - 1" identifier = (binary_expression "uVar9 - 1" identifier - number_literal)) ;) (expression_statement "cVar6 = *pcVar18;" (assignment_expression "cVar6 = *pcVar18" identifier = (pointer_expression "*pcVar18" * identifier)) ;) (expression_statement "pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;" (assignment_expression "pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pcVar18 + (uint)bVar40 * -2 + 1" (binary_expression "pcVar18 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "iVar10 = ~uVar9 - 1;" (assignment_expression "iVar10 = ~uVar9 - 1" identifier = (binary_expression "~uVar9 - 1" (unary_expression "~uVar9" ~ identifier) - number_literal)) ;) (if_statement "if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;" if (parenthesized_expression "((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))" ( (binary_expression "(local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10)" (parenthesized_expression "(local_154.st_size._4_4_ != 0)" ( (binary_expression "local_154.st_size._4_4_ != 0" (field_expression "local_154.st_size._4_4_" (field_expression "local_154.st_size" identifier . field_identifier) . field_identifier) != number_literal) )) || (parenthesized_expression "((int)local_154.st_size != iVar10)" ( (binary_expression "(int)local_154.st_size != iVar10" (cast_expression "(int)local_154.st_size" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_size" identifier . field_identifier)) != identifier) ))) )) (goto_statement "goto LAB_0001933e;" goto statement_identifier ;)) (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)local_154.st_size;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)local_154.st_size" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (cast_expression "(int)local_154.st_size" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_size" identifier . field_identifier))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e2b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e2b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b850();" (assignment_expression "iVar10 = FUN_0001b850()" identifier = (call_expression "FUN_0001b850()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) goto LAB_0001933e;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001933e;" goto statement_identifier ;)) (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0xc) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e41;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e41" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier = (call_expression "strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }" { (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a12b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a12b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (goto_statement "goto LAB_0001933e;" goto statement_identifier ;) })) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e55;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e55" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e5d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e5d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" else (compound_statement "{\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" { (labeled_statement "LAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a72;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a72" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x193dc;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x193dc" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1)" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,1)" identifier (argument_list "(local_208._1_3_,1)" ( (field_expression "local_208._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "bVar40 = *(byte *)((int)local_1f0 + 0x1d);" (assignment_expression "bVar40 = *(byte *)((int)local_1f0 + 0x1d)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x1d)" * (cast_expression "(byte *)((int)local_1f0 + 0x1d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "bVar25 = bVar40;" (assignment_expression "bVar25 = bVar40" identifier = identifier) ;) (if_statement "if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }" if (parenthesized_expression "(bVar40 != 0)" ( (binary_expression "bVar40 != 0" identifier != number_literal) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._28_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_1b4._28_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (field_expression "local_1b4._24_4_" identifier . field_identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18aba;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18aba" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));" (assignment_expression "iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" identifier = (call_expression "lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__uid_t *)(puVar29 + -0xc)" * (cast_expression "(__uid_t *)(puVar29 + -0xc)" ( (type_descriptor "__uid_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(__gid_t *)(puVar29 + -8)" * (cast_expression "(__gid_t *)(puVar29 + -8)" ( (type_descriptor "__gid_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40)" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,bVar40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,bVar40)" identifier (argument_list "(local_208._1_3_,bVar40)" ( (field_expression "local_208._1_3_" identifier . field_identifier) , identifier ))))) ;) }) (else_clause "else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" else (compound_statement "{\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18ad3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18ad3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00015b20();" (assignment_expression "cVar6 = FUN_00015b20()" identifier = (call_expression "FUN_00015b20()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6)" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,cVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,cVar6)" identifier (argument_list "(local_208._1_3_,cVar6)" ( (field_expression "local_208._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }" { (expression_statement "*(char **)(puVar29 + -4) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -4) = pcVar20" (pointer_expression "*(char **)(puVar29 + -4)" * (cast_expression "(char **)(puVar29 + -4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""failed to preserve ownership for %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19574;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19574" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1957b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1957b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -0x14) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x14) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x14)" * (cast_expression "(char **)(puVar29 + -0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001958b;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001958b" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001958b" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) }))) })) }))))) (labeled_statement "LAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;" statement_identifier : (expression_statement "bVar40 = local_238 != (stat64 *)0x4000;" (assignment_expression "bVar40 = local_238 != (stat64 *)0x4000" identifier = (binary_expression "local_238 != (stat64 *)0x4000" identifier != (cast_expression "(stat64 *)0x4000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;)) (if_statement "if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }" { (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" identifier (argument_list "(local_20c._1_3_,*(byte *)(local_1f0 + 5))" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) )))) ))))) ;) (expression_statement "bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;" (assignment_expression "bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40" identifier = (binary_expression "(*(byte *)(local_1f0 + 5) ^ 1) & bVar40" (parenthesized_expression "(*(byte *)(local_1f0 + 5) ^ 1)" ( (binary_expression "*(byte *)(local_1f0 + 5) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) )))) ^ number_literal) )) & identifier)) ;) (if_statement "if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }" if (parenthesized_expression "(bVar7 != 0)" ( (binary_expression "bVar7 != 0" identifier != number_literal) )) (compound_statement "{\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }" { (expression_statement "bVar2 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar2 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(bVar40 = bVar7, bVar2 != 0)" ( (comma_expression "bVar40 = bVar7, bVar2 != 0" (assignment_expression "bVar40 = bVar7" identifier = identifier) , (binary_expression "bVar2 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)bVar2;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)bVar2" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x177d2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x177d2" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar40 = FUN_00015960();" (assignment_expression "bVar40 = FUN_00015960()" identifier = (call_expression "FUN_00015960()" identifier (argument_list "()" ( )))) ;) (if_statement "if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }" if (parenthesized_expression "(bVar40 == 0)" ( (binary_expression "bVar40 == 0" identifier == number_literal) )) (compound_statement "{\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }" { (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x26)" * (cast_expression "(char *)((int)local_1f0 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x26)" ( (binary_expression "(int)local_1f0 + 0x26" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "bVar40 = bVar7;" (assignment_expression "bVar40 = bVar7" identifier = identifier) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x26) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x26) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x26)" * (cast_expression "(char *)((int)local_1f0 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x26)" ( (binary_expression "(int)local_1f0 + 0x26" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016fad;" goto statement_identifier ;)) })) })) })) })) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" identifier = number_literal) ;) (if_statement "if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }" { (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" identifier = (binary_expression "local_24c & 0xffffff00" identifier & number_literal)) ;) (goto_statement "goto LAB_00016722;" goto statement_identifier ;) })) (labeled_statement "LAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;" statement_identifier : (if_statement "if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;" if (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))" ( (binary_expression "((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0)" (parenthesized_expression "((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(bVar40 != 0)" ( (binary_expression "bVar40 != 0" identifier != number_literal) ))) )) || (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) ))) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;))) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1f) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1f) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1f)" * (cast_expression "(char *)((int)local_1f0 + 0x1f)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1f)" ( (binary_expression "(int)local_1f0 + 0x1f" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }" { (labeled_statement "LAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;" statement_identifier : (if_statement "if ((char)local_208 == '\0') goto LAB_0001687d;" if (parenthesized_expression "((char)local_208 == '\0')" ( (binary_expression "(char)local_208 == '\0'" (cast_expression "(char)local_208" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001687d;" goto statement_identifier ;))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x27) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" * (cast_expression "(char *)((int)local_1f0 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x27)" ( (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17511;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17511" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00014b00();" (assignment_expression "cVar6 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') goto LAB_0001614a;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (expression_statement "cVar6 = (char)local_1f0[10];" (assignment_expression "cVar6 = (char)local_1f0[10]" identifier = (cast_expression "(char)local_1f0[10]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[10]" identifier [ number_literal ]))) ;) }) (else_clause "else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" else (compound_statement "{\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" { (expression_statement "local_30 = local_174;" (assignment_expression "local_30 = local_174" identifier = identifier) ;) (expression_statement "local_2c = local_170;" (assignment_expression "local_2c = local_170" identifier = identifier) ;) (expression_statement "local_28 = local_16c;" (assignment_expression "local_28 = local_16c" identifier = identifier) ;) (expression_statement "local_24 = local_168;" (assignment_expression "local_24 = local_168" identifier = identifier) ;) (if_statement "if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }" if (parenthesized_expression "((char)local_208 != '\0')" ( (binary_expression "(char)local_208 != '\0'" (cast_expression "(char)local_208" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }" { (expression_statement "*(__time_t **)(puVar29 + -0xc) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -0xc) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -0xc)" * (cast_expression "(__time_t **)(puVar29 + -0xc)" ( (type_descriptor "__time_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16805;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16805" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_000225b0();" (assignment_expression "iVar10 = FUN_000225b0()" identifier = (call_expression "FUN_000225b0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x16811;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x16811" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 != 0x26) goto LAB_00016816;" if (parenthesized_expression "(*piVar14 != 0x26)" ( (binary_expression "*piVar14 != 0x26" (pointer_expression "*piVar14" * identifier) != number_literal) )) (goto_statement "goto LAB_00016816;" goto statement_identifier ;)) })) (goto_statement "goto LAB_00016870;" goto statement_identifier ;) })) (expression_statement "*(__time_t **)(puVar29 + -0xc) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -0xc) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -0xc)" * (cast_expression "(__time_t **)(puVar29 + -0xc)" ( (type_descriptor "__time_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18652;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18652" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00022580();" (assignment_expression "iVar10 = FUN_00022580()" identifier = (call_expression "FUN_00022580()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }" { (labeled_statement "LAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16826;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16826" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb03f" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1683b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1683b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1fc = dcgettext();" (assignment_expression "local_1fc = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16846;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16846" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar9 = local_1fc;" (assignment_expression "uVar9 = local_1fc" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x18) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00016857;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00016857" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00016857" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" statement_identifier : (if_statement "if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid))))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1d) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" * (cast_expression "(char *)((int)local_1f0 + 0x1d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))" ( (parenthesized_expression "(((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid))" ( (binary_expression "((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)" (parenthesized_expression "((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid))" ( (binary_expression "(byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)" (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(local_1b4._24_4_ != local_154.st_uid)" ( (binary_expression "local_1b4._24_4_ != local_154.st_uid" (field_expression "local_1b4._24_4_" identifier . field_identifier) != (field_expression "local_154.st_uid" identifier . field_identifier)) ))) )) || (parenthesized_expression "(local_1b4._28_4_ != local_154.st_gid)" ( (binary_expression "local_1b4._28_4_ != local_154.st_gid" (field_expression "local_1b4._28_4_" identifier . field_identifier) != (field_expression "local_154.st_gid" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" { (expression_statement "*(stat64 **)(puVar29 + -8) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_154" & identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x168d3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x168d3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00015b60();" (assignment_expression "iVar10 = FUN_00015b60()" identifier = (call_expression "FUN_00015b60()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == -1) goto LAB_00016148;" if (parenthesized_expression "(iVar10 == -1)" ( (binary_expression "iVar10 == -1" identifier == number_literal) )) (goto_statement "goto LAB_00016148;" goto statement_identifier ;)) (if_statement "if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              local_204 = local_204 & 0xfffff1ff;\n            }" { (expression_statement "local_204 = local_204 & 0xfffff1ff;" (assignment_expression "local_204 = local_204 & 0xfffff1ff" identifier = (binary_expression "local_204 & 0xfffff1ff" identifier & number_literal)) ;) })) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x27) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" * (cast_expression "(char *)((int)local_1f0 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x27)" ( (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }" { (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18c76;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18c76" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00014b00();" (assignment_expression "cVar6 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;" if (parenthesized_expression "((cVar6 == '\0') && ((char)local_1f0[10] != '\0'))" ( (binary_expression "(cVar6 == '\0') && ((char)local_1f0[10] != '\0')" (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[10] != '\0')" ( (binary_expression "(char)local_1f0[10] != '\0'" (cast_expression "(char)local_1f0[10]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[10]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_00016148;" goto statement_identifier ;)) })) (if_statement "if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1e) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1e)" * (cast_expression "(char *)((int)local_1f0 + 0x1e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1e)" ( (binary_expression "(int)local_1f0 + 0x1e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }" { (if_statement "if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" * (cast_expression "(char *)((int)local_1f0 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2b)" ( (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }" { (if_statement "if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }" if (parenthesized_expression "((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0)" ( (binary_expression "(*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0" (parenthesized_expression "(*(byte *)(local_1f0 + 8) & (byte)local_1f4)" ( (binary_expression "*(byte *)(local_1f0 + 8) & (byte)local_1f4" (pointer_expression "*(byte *)(local_1f0 + 8)" * (cast_expression "(byte *)(local_1f0 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 8)" ( (binary_expression "local_1f0 + 8" identifier + number_literal) )))) & (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier)) )) == number_literal) )) (compound_statement "{\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }" { (if_statement "if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" if (parenthesized_expression "(local_23c == 0)" ( (binary_expression "local_23c == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }" { (labeled_statement "LAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;" statement_identifier : (if_statement "if ((byte)local_224 == '\0') goto LAB_0001614a;" if (parenthesized_expression "((byte)local_224 == '\0')" ( (binary_expression "(byte)local_224 == '\0'" (cast_expression "(byte)local_224" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;))) }) (else_clause "else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" else (compound_statement "{\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x191ba;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x191ba" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar22 = FUN_00015d90();" (assignment_expression "uVar22 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_23c = local_23c & ~uVar22;" (assignment_expression "local_23c = local_23c & ~uVar22" identifier = (binary_expression "local_23c & ~uVar22" identifier & (unary_expression "~uVar22" ~ identifier))) ;) (if_statement "if (local_23c == 0) goto LAB_0001694e;" if (parenthesized_expression "(local_23c == 0)" ( (binary_expression "local_23c == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001694e;" goto statement_identifier ;)) (if_statement "if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }" if (parenthesized_expression "((byte)local_224 != '\x01')" ( (binary_expression "(byte)local_224 != '\x01'" (cast_expression "(byte)local_224" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }" { (if_statement "if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }" if (parenthesized_expression "((byte)local_1f4 != '\0')" ( (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }" { (expression_statement "*(uint *)(puVar29 + -4) = ~uVar22;" (assignment_expression "*(uint *)(puVar29 + -4) = ~uVar22" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (unary_expression "~uVar22" ~ identifier)) ;) (expression_statement "*(stat64 **)(puVar29 + -8) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_154" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19977;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19977" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar30 = puVar29 + -0xc;" (assignment_expression "puVar30 = puVar29 + -0xc" identifier = (binary_expression "puVar29 + -0xc" identifier + number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_0001620e;" goto statement_identifier ;) })) })) (expression_statement "local_270 = local_154.st_mode;" (assignment_expression "local_270 = local_154.st_mode" identifier = (field_expression "local_154.st_mode" identifier . field_identifier)) ;) (if_statement "if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;" if (parenthesized_expression "((local_23c & ~local_154.st_mode) == 0)" ( (binary_expression "(local_23c & ~local_154.st_mode) == 0" (parenthesized_expression "(local_23c & ~local_154.st_mode)" ( (binary_expression "local_23c & ~local_154.st_mode" identifier & (unary_expression "~local_154.st_mode" ~ (field_expression "local_154.st_mode" identifier . field_identifier))) )) == number_literal) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) })) }))) (expression_statement "*(uint *)(puVar29 + -0xc) = local_270 | local_23c;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_270 | local_23c" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "local_270 | local_23c" identifier | identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16976;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16976" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier = (call_expression "chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0xc)" * (cast_expression "(__mode_t *)(puVar29 + -0xc)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16990;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16990" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb027" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x169a5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x169a5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f4 = (char *)dcgettext();" (assignment_expression "local_1f4 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x169b0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x169b0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar20 = local_1f4;" (assignment_expression "pcVar20 = local_1f4" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x18) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x18) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x18)" * (cast_expression "(char **)(puVar29 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000169c1;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000169c1" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000169c1" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) })) (expression_statement "uVar22 = 0x1b6;" (assignment_expression "uVar22 = 0x1b6" identifier = number_literal) ;) (if_statement "if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }" if (parenthesized_expression "((local_204 & 0x7000) == 0x4000)" ( (binary_expression "(local_204 & 0x7000) == 0x4000" (parenthesized_expression "(local_204 & 0x7000)" ( (binary_expression "local_204 & 0x7000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                uVar22 = 0x1ff;\n              }" { (expression_statement "uVar22 = 0x1ff;" (assignment_expression "uVar22 = 0x1ff" identifier = number_literal) ;) })) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x191a8;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x191a8" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar21 = FUN_00015d90();" (assignment_expression "uVar21 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(uint *)(puVar29 + -8) = ~uVar21 & uVar22;" (assignment_expression "*(uint *)(puVar29 + -8) = ~uVar21 & uVar22" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (binary_expression "~uVar21 & uVar22" (unary_expression "~uVar21" ~ identifier) & identifier)) ;) }) (else_clause "else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" else (compound_statement "{\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" { (expression_statement "*(int *)(puVar29 + -8) = local_1f0[4];" (assignment_expression "*(int *)(puVar29 + -8) = local_1f0[4]" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (subscript_expression "local_1f0[4]" identifier [ number_literal ])) ;) }))) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18ece;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18ece" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" identifier = (call_expression "FUN_0001b7d0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) goto LAB_0001614a;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (goto_statement "goto LAB_00016148;" goto statement_identifier ;) })) (expression_statement "*(uint *)(puVar29 + -0x10) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x10) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x10)" * (cast_expression "(uint *)(puVar29 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x18) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x18) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x18)" * (cast_expression "(char **)(puVar29 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x183b6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x183b6" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b720();" (assignment_expression "iVar10 = FUN_0001b720()" identifier = (call_expression "FUN_0001b720()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) goto LAB_0001614a;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (expression_statement "cVar6 = (char)local_1f0[9];" (assignment_expression "cVar6 = (char)local_1f0[9]" identifier = (cast_expression "(char)local_1f0[9]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[9]" identifier [ number_literal ]))) ;) }))) (if_statement "if (cVar6 == '\0') goto LAB_0001614a;" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) })) }))) }))) (labeled_statement "LAB_00016148:\n  uVar9 = 0;" statement_identifier : (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;)) (labeled_statement "LAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }" statement_identifier : (if_statement "if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }" if (parenthesized_expression "(local_20 == *(int *)(in_GS_OFFSET + 0x14))" ( (binary_expression "local_20 == *(int *)(in_GS_OFFSET + 0x14)" identifier == (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) )) (compound_statement "{\n    return uVar9;\n  }" { (return_statement "return uVar9;" return identifier ;) }))) comment (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19855;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19855" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0002bcb0();" (call_expression "FUN_0002bcb0()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Enum "savedir_option": Some values do not have unique names */\n\n_Bool __regparm3\ncopy_internal(char *src_name,char *dst_name,_Bool new_dst,stat *parent,dir_list *ancestors,\n             cp_options *x,_Bool command_line_arg,_Bool *first_dir_created_per_command_line_arg,\n             _Bool *copy_into_self,_Bool *rename_succeeded)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  code cVar3;\n  _Bool _Var4;\n  Interactive IVar5;\n  bool bVar6;\n  _Bool *p_Var7;\n  code *pcVar8;\n  _Bool *p_Var9;\n  cp_options *pcVar10;\n  __mode_t _Var11;\n  _Bool _Var12;\n  char cVar13;\n  byte bVar14;\n  int iVar15;\n  uint uVar16;\n  int iVar17;\n  char *pcVar18;\n  undefined4 uVar19;\n  stat *psVar20;\n  int *piVar21;\n  char *pcVar22;\n  Hash_table *pHVar23;\n  size_t sVar24;\n  Hash_table *pHVar25;\n  uint uVar26;\n  __blksize_t _Var27;\n  code *pcVar28;\n  undefined3 extraout_var;\n  dir_list *pdVar29;\n  mode_t mVar30;\n  undefined3 extraout_var_00;\n  cp_options *pcVar31;\n  undefined3 extraout_var_01;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar32;\n  stat64 *psVar33;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar34;\n  undefined4 extraout_EDX_01;\n  undefined **ppuVar35;\n  off_t *poVar36;\n  undefined4 *puVar37;\n  undefined4 *puVar38;\n  undefined1 *puVar39;\n  undefined1 *puVar40;\n  off_t *poVar41;\n  off_t *poVar42;\n  byte *pbVar43;\n  backup_type bVar44;\n  backup_type bVar45;\n  stat *psVar46;\n  int in_GS_OFFSET;\n  undefined1 uVar47;\n  undefined1 uVar48;\n  byte bVar49;\n  bool bVar50;\n  __off64_t _Var51;\n  undefined3 in_stack_00000011;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  _Bool *local_27c;\n  uint local_278;\n  Sparse_type local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  uint local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  Hash_table *local_230;\n  stat *local_22c;\n  dir_list *local_228;\n  __mode_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  stat *local_214;\n  __mode_t local_210;\n  stat *local_20c;\n  _Bool *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  cp_options *local_1f0;\n  _Bool read_hole;\n  _Bool wrote_hole_at_eof;\n  int local_1d8;\n  _Bool local_copy_into_self;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  __uid_t local_1bc;\n  stat src_sb;\n  stat dst_sb;\n  stat tmp_dst_sb;\n  stat dst_back_sb;\n  timespec timespec [2];\n  \n  bVar49 = 0;\n  ppuVar35 = &_GLOBAL_OFFSET_TABLE_;\n  local_200 = src_name;\n  local_1f8 = dst_name;\n  local_22c = parent;\n  local_220 = (code *)copy_into_self;\n  local_21c = (code *)first_dir_created_per_command_line_arg;\n  local_228 = ancestors;\n  local_208 = rename_succeeded;\n  local_1f0 = x;\n  local_1fc = _command_line_arg;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,new_dst);\n  local_224 = CONCAT31(local_224._1_3_,command_line_arg);\n  iVar2 = *(int *)(in_GS_OFFSET + 0x14);\n  *copy_into_self = false;\n  iVar17 = x->rename_errno;\n  if (x->move_mode != false) {\n    if (-1 < iVar17) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);\n    iVar17 = renameatu(-100,src_name,-100,dst_name,1);\n    if (iVar17 != 0) {\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\nLAB_000161c0:\n    if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar17 = 0;\n    pcVar18 = local_1f8;\n    if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;\nLAB_00015eb2:\n    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 == 0) goto LAB_00015ed4;\nLAB_0001620a:\n    puVar37 = (undefined4 *)&stack0xfffffd68;\nLAB_0001620e:\n    puVar37[-1] = 4;\n    puVar37[-2] = 0x16215;\n    pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);\n    puVar38 = puVar37 + 1;\n    puVar37[1] = 5;\n    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);\nLAB_00016222:\n    *(undefined ***)((int)puVar38 + -4) = ppuVar35;\n    *(undefined4 *)((int)puVar38 + -8) = 0;\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;\n    uVar19 = dcgettext();\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x16231;\n    piVar21 = __errno_location();\n    *(char **)((int)puVar38 + -0xc) = pcVar18;\n    *(undefined4 *)((int)puVar38 + -0x10) = uVar19;\n    *(int *)((int)puVar38 + -0x14) = *piVar21;\n    *(undefined4 *)((int)puVar38 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar17 == 0) goto LAB_000161c0;\n  if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n    pcVar18 = local_200;\n    if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;\nLAB_000161e8:\n    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 != 0) goto LAB_0001620a;\nLAB_00015ed4:\n    local_204 = src_sb.st_mode;\n    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }\n  }\nLAB_00015ef0:\n  puVar40 = auStack_28c;\n  poVar36 = (off_t *)auStack_28c;\n  puVar39 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)) {\n    local_20c = &src_sb;\n    if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }\n    record_file(pHVar23,local_200,local_20c);\n  }\n  local_20c = (stat *)0x1;\n  if (local_1f0->dereference != DEREF_ALWAYS) {\n    local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n    local_214 = (stat *)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    uVar16 = 0;\n    if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }\n    iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);\n    if (iVar17 < 0) {\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\n    pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));\n    puVar39 = auStack_28c;\n    if ((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;\n    poVar36 = (off_t *)auStack_28c;\n    if (local_1f0->preserve_security_context != false) {\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (stat *)((uint)local_214._1_3_ << 8);\n  local_230 = (Hash_table *)0x0;\nLAB_00016259:\n  puVar40 = puVar39;\n  if (((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0)) {\nLAB_00016338:\n    poVar36 = (off_t *)puVar40;\n    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }\n    if (iVar17 == 0) {\n      if (local_1f0->move_mode != false) goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar16 = src_sb.st_ino._4_4_;\n    pcVar18 = (char *)src_sb.st_ino;\n    if ((local_1f0->recursive != false) && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (stat *)src_sb.st_dev;\n      local_210 = src_sb.st_dev._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -8) = local_214;\n        *(uint *)((int)poVar36 + -0xc) = uVar16;\n        *(char **)((int)poVar36 + -0x10) = pcVar18;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163c0;\n        local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                               *(dev_t *)((int)poVar36 + -8));\n      }\n      else {\n        *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -0x14) = local_214;\n        *(uint *)((int)poVar36 + -0x18) = uVar16;\n        *(char **)((int)poVar36 + -0x1c) = pcVar18;\n        *(char **)((int)poVar36 + -0x20) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x176f4;\n        local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                            *(ino_t *)((int)poVar36 + -0x1c),\n                                            *(dev_t *)((int)poVar36 + -0x14));\n      }\n      if (local_214 != (stat *)0x0) {\nLAB_000163d3:\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163e7;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b02;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b16;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b2b;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x16406;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -0xc) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0x10) = 4;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18eee;\n          pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                   *(char **)((int)poVar36 + -0xc));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18f03;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0->dereference != DEREF_ALWAYS) &&\n           ((local_1f0->dereference != DEREF_COMMAND_LINE_ARGUMENTS || ((byte)local_1fc == '\0'))))\n        {\n          *(stat **)((int)poVar36 + -8) = local_214;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d3f;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d53;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d68;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar13 = local_1f0->move_mode;\nLAB_00016afb:\n      if (cVar13 == '\0') {\nLAB_00016b03:\n        local_208 = (_Bool *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar17 == 0x11) {\n          *(char **)((int)poVar36 + -0xc) = local_1f8;\n          *(char **)((int)poVar36 + -0x10) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x174bc;\n          iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x174cc;\n            piVar21 = __errno_location();\n            iVar17 = *piVar21;\n            if (iVar17 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (local_1f0->verbose != false) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "renamed ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18223;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1822d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18244;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n          }\n          if (local_1f0->set_security_context != false) {\n            *(cp_options **)((int)poVar36 + -4) = local_1f0;\n            *(undefined4 *)((int)poVar36 + -8) = 1;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18208;\n            set_file_security_ctx\n                      (*(char **)((int)poVar36 + -0x10),*(_Bool *)((int)poVar36 + -0xc),\n                       *(_Bool *)((int)poVar36 + -8),*(cp_options **)((int)poVar36 + -4));\n          }\n          if (local_208 != (_Bool *)0x0) {\n            *local_208 = true;\n          }\n          puVar39 = (undefined1 *)poVar36;\n          if (((byte)local_1fc != '\0') && (local_1f0->last_file == false)) {\n            *(stat **)((int)poVar36 + -8) = &src_sb;\n            pcVar31 = local_1f0;\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(Hash_table **)((int)poVar36 + -0x10) = pcVar31->dest_info;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17ab6;\n            record_file(*(Hash_table **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc),\n                        *(stat **)((int)poVar36 + -8));\n            bVar32 = (byte)local_1fc;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar17 == 0x16) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185ca;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185de;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185f3;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar17 != 0x12) {\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180a2;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_200;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          local_1f0 = (cp_options *)pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180ba;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180cf;\n          uVar19 = dcgettext();\n          *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(int *)((int)poVar36 + -0x1c) = iVar17;\n          goto LAB_00017594;\n        }\n        uVar16 = local_204 & 0xf000;\n        if (uVar16 == 0x4000) {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x1825e;\n          iVar17 = rmdir(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1826e;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x164d6;\n          iVar17 = unlink(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1753d;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) {\nLAB_00017548:\n              *(char **)((int)poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1755a;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(char **)((int)poVar36 + -8) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              local_1f0 = (cp_options *)pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17572;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(undefined4 *)((int)poVar36 + -8) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17587;\n              uVar19 = dcgettext();\n              *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\nLAB_00017594:\n              *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar32 = uVar16 != 0x4000 & local_1f0->verbose;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n          if (bVar32 != 0) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "copied ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a23;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a2d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a44;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n            local_208 = (_Bool *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (_Bool *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar13 = local_1f0->move_mode;\n    if ((_Bool)cVar13 == false) {\n      if (local_1f0->preserve_links == false) goto LAB_000165a0;\n      if (local_1f0->hard_link == false) goto LAB_00016ac0;\n      local_214 = (stat *)0x0;\n      goto LAB_00016b03;\n    }\n    if (src_sb.st_nlink != 1) {\n      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {\nLAB_00016ac0:\n        if ((1 < src_sb.st_nlink) ||\n           ((((byte)local_1fc != '\0' && (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS))\n            || (local_214 = (stat *)0x0, local_1f0->dereference == DEREF_ALWAYS)))) {\n          *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n          *(stat **)((int)poVar36 + -0x14) = (stat *)src_sb.st_dev;\n          *(uint *)((int)poVar36 + -0x18) = src_sb.st_ino._4_4_;\n          *(char **)((int)poVar36 + -0x1c) = (char *)src_sb.st_ino;\n          *(char **)((int)poVar36 + -0x20) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x1772e;\n          local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                              *(ino_t *)((int)poVar36 + -0x1c),\n                                              *(dev_t *)((int)poVar36 + -0x14));\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (stat *)0x0;\n      goto LAB_00016495;\n    }\n    *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n    *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n    *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n    *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x1834d;\n    local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                           *(dev_t *)((int)poVar36 + -8));\nLAB_00017737:\n    pcVar31 = local_1f0;\n    if (local_214 == (stat *)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(stat **)((int)poVar36 + -0xc) = local_20c;\n    pcVar18 = local_1f8;\n    *(uint *)((int)poVar36 + -0x10) = (uint)pcVar31->verbose;\n    psVar20 = local_214;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x17785;\n    _Var12 = create_hard_link((char *)psVar20,pcVar18,true,*(_Bool *)((int)poVar36 + -0x10),\n                              *(_Bool *)((int)poVar36 + -0xc));\n    puVar39 = (undefined1 *)poVar36;\n    if (_Var12) goto LAB_00016570;\n    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;\nLAB_00016fcb:\n    pHVar23 = local_230;\n    if (local_230 != (Hash_table *)0x0) {\n      *(char **)((int)poVar36 + -0xc) = local_1f8;\n      *(Hash_table **)((int)poVar36 + -0x10) = pHVar23;\n      *(undefined4 *)((int)poVar36 + -0x14) = 0x16fe8;\n      iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n      if (iVar17 != 0) {\n        *(char **)((int)poVar36 + -0xc) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x10) = 4;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x182f0;\n        pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                 *(char **)((int)poVar36 + -0xc));\n        puVar38 = (undefined4 *)((int)poVar36 + -8);\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        ppuVar35 = ppuVar35 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (local_1f0->verbose != false) {\n        *(char **)((int)poVar36 + -8) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 1;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17015;\n        pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(Hash_table **)((int)poVar36 + -8) = local_230;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17029;\n        pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        *(undefined ***)((int)poVar36 + -0xc) = ppuVar35 + -0x2bde;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x1703e;\n        uVar19 = dcgettext();\n        *(char **)((int)poVar36 + -0x14) = pcVar18;\n        *(char **)((int)poVar36 + -0x18) = pcVar22;\n        *(undefined4 *)((int)poVar36 + -0x1c) = uVar19;\n        *(undefined4 *)((int)poVar36 + -0x20) = 1;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if (local_1f0->move_mode != false) goto LAB_00016338;\n    if (local_1f0->backup_type == no_backups) {\n      psVar20 = &dst_sb;\n      if ((char)local_214 == '\0') {\n        *(stat **)(puVar40 + -8) = &dst_back_sb;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar40 + -0x10) = 3;\n        local_214 = &dst_back_sb;\n        *(undefined4 *)(puVar40 + -0x14) = 0x17a7d;\n        iVar15 = __lxstat64(*(int *)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                            *(stat64 **)(puVar40 + -8));\n        psVar20 = local_214;\n        if (iVar15 != 0) goto LAB_00016338;\n      }\n      pcVar31 = local_1f0;\n      if ((psVar20->st_mode & 0xf000) == 0xa000) {\n        *(stat **)(puVar40 + -8) = psVar20;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(Hash_table **)(puVar40 + -0x10) = pcVar31->dest_info;\n        *(undefined4 *)(puVar40 + -0x14) = 0x162d3;\n        _Var12 = seen_file(*(Hash_table **)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                           *(stat **)(puVar40 + -8));\n        if (_Var12) {\n          *(char **)(puVar40 + -8) = local_1f8;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 1;\n          *(undefined4 *)(puVar40 + -0x14) = 0x162ec;\n          pcVar18 = quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                     *(char **)(puVar40 + -8));\n          *(char **)(puVar40 + -8) = local_200;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16300;\n          local_1f0 = (cp_options *)\n                      quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                       *(char **)(puVar40 + -8));\n          *(undefined4 *)(puVar40 + -8) = 5;\n          *(char **)(puVar40 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16319;\n          uVar19 = dcgettext();\n          pcVar31 = local_1f0;\n          *(char **)(puVar40 + -0x10) = pcVar18;\n          *(cp_options **)(puVar40 + -0x14) = pcVar31;\n          *(undefined4 *)(puVar40 + -0x18) = uVar19;\n          *(undefined4 *)(puVar40 + -0x1c) = 0;\n          *(undefined4 *)(puVar40 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar40 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    poVar36 = (off_t *)puVar40;\n    if (local_1f0->verbose != false) goto LAB_00016b18;\n    if (iVar17 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_214 = (stat *)0x0;\n    local_208 = (_Bool *)((uint)local_1f4 & 0xff);\nLAB_000165b7:\n    local_234 = (stat64 *)(local_204 & 0xfff);\n    if (local_1f0->set_mode != false) {\n      local_234 = (stat64 *)(local_1f0->mode & 0xfff);\n    }\n    if (local_1f0->preserve_ownership == false) {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16dee;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        if (_Var12) {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16a82;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        local_23c = 0;\n        if (_Var12) goto LAB_0001664e;\n      }\n    }\n    else {\n      *(cp_options **)(poVar36 + -2) = local_1f0;\n      *(_Bool **)((int)poVar36 + -0x14) = local_208;\n      *(uint *)(poVar36 + -3) = local_204;\n      *(char **)((int)poVar36 + -0x1c) = local_1f8;\n      *(char **)(poVar36 + -4) = local_200;\n      *(undefined4 *)((int)poVar36 + -0x24) = 0x16618;\n      _Var12 = set_process_security_ctx\n                         (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                          *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                          *(cp_options **)(poVar36 + -2));\n      if (_Var12) {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          pcVar31 = local_1f0;\n          if (local_228 == (dir_list *)0x0) {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n          }\n          else {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n            pdVar29 = local_228;\n            do {\n              if ((*(uint *)((int)&pdVar29->ino + 4) == src_sb.st_ino._4_4_ &&\n                   *(char **)&pdVar29->ino == (char *)src_sb.st_ino) &&\n                 (src_sb.st_dev._4_4_ == *(__mode_t *)((int)&pdVar29->dev + 4) &&\n                  (stat *)src_sb.st_dev == *(stat **)&pdVar29->dev)) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16e7e;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              pdVar29 = pdVar29->parent;\n            } while (pdVar29 != (dir_list *)0x0);\n          }\n          local_20c = (stat *)src_sb.st_dev;\n          local_224 = src_sb.st_dev._4_4_;\n          local_238 = (stat64 *)((int)poVar36 - 0x11U & 0xfffffff0);\n          local_238->__pad1 = src_sb.st_ino._4_4_;\n          local_238->__st_ino = (__ino_t)(stat *)src_sb.st_dev;\n          *(dir_list **)&local_238->st_dev = local_228;\n          *(char **)((int)&local_238->st_dev + 4) = (char *)src_sb.st_ino;\n          local_238->st_mode = src_sb.st_dev._4_4_;\n          if (((byte)local_1f4 == '\0') && ((dst_sb.st_mode & 0xf000) == 0x4000)) {\n            if (local_1f0->set_security_context == false) {\n              bVar32 = local_1f0->preserve_security_context;\n              if ((_Bool)bVar32 != false) goto LAB_0001889e;\n            }\n            else {\n              bVar32 = local_1f0->preserve_security_context;\nLAB_0001889e:\n              *(cp_options **)((int)poVar36 + -0x24) = local_1f0;\n              *(undefined4 *)(poVar36 + -5) = 0;\n              *(uint *)((int)poVar36 + -0x2c) = (uint)bVar32;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x188b3;\n              _Var12 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -6),*(_Bool *)((int)poVar36 + -0x2c),\n                                  SUB81(poVar36[-5],0),*(cp_options **)((int)poVar36 + -0x24));\n              if ((!_Var12) && (poVar42 = poVar36 + -4, pcVar31->require_preserve_context != false))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)((int)poVar36 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(poVar36 + -6) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17154;\n            iVar17 = mkdir(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 100000;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)((int)poVar41 + -4) = pcVar18;\n              *(undefined4 *)((int)poVar41 + -8) = 0;\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f98;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f9f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar41 + -0xc) = pcVar22;\n              *(undefined4 *)((int)poVar41 + -0x10) = uVar19;\n              *(int *)((int)poVar41 + -0x14) = *piVar21;\n              *(undefined4 *)((int)poVar41 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar41 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat **)(poVar36 + -5) = &dst_sb;\n            *(char **)((int)poVar36 + -0x2c) = local_1f8;\n            *(undefined4 *)(poVar36 + -6) = 3;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17176;\n            iVar17 = __lxstat64((int)poVar36[-6],*(char **)((int)poVar36 + -0x2c),\n                                *(stat64 **)(poVar36 + -5));\n            _Var11 = dst_sb.st_mode;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x18ce1;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((dst_sb.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)((int)poVar36 + -0x2c) = dst_sb.st_mode | 0x1c0;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x171b2;\n              iVar17 = chmod(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n              local_270 = _Var11;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x19082;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                poVar41 = poVar36 + -5;\n                *(undefined4 *)(poVar36 + -5) = 5;\n                pcVar18 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__mode_t *)(poVar36 + -6) = dst_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -0x34) = (stat *)dst_sb.st_dev;\n              *(uint *)(poVar36 + -7) = dst_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x3c) = (char *)dst_sb.st_ino;\n              *(char **)(poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x44) = 0x18c19;\n              remember_copied(*(char **)(poVar36 + -8),*(ino_t *)((int)poVar36 + -0x3c),\n                              *(dev_t *)((int)poVar36 + -0x34));\n              *local_21c = (code)0x1;\n            }\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            if (local_1f0->verbose != false) {\n              if (local_1f0->move_mode == false) {\n                *(undefined4 *)((int)poVar36 + -0x24) = 0x18d28;\n                emit_verbose(pcVar18,pcVar22,(char *)0x0);\n              }\n              else {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x171ff;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                *(undefined4 *)(poVar36 + -5) = 5;\n                *(char **)((int)poVar36 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(poVar36 + -6) = 0;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17214;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -5) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x2c) = uVar19;\n                *(undefined4 *)(poVar36 + -6) = 1;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          poVar42 = poVar36 + -4;\n          bVar32 = local_22c != (stat *)0x0 & local_1f0->one_file_system;\n          if ((bVar32 == 0) ||\n             (*(__mode_t *)((int)&local_22c->st_dev + 4) == src_sb.st_dev._4_4_ &&\n              *(stat **)&local_22c->st_dev == (stat *)src_sb.st_dev)) {\n            local_240 = (stat64 *)&dst_back_sb;\n            pcVar31 = local_1f0;\n            psVar33 = (stat64 *)&dst_back_sb;\n            for (iVar17 = 0x11; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar33->st_dev = (char *)pcVar31->backup_type;\n              pcVar31 = (cp_options *)((int)pcVar31 + (uint)bVar49 * -8 + 4);\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n            }\n            *(undefined4 *)((int)poVar36 + -0x2c) = 2;\n            *(char **)(poVar36 + -6) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x1726d;\n            pHVar23 = (Hash_table *)\n                      savedir(*(char **)(poVar36 + -6),*(savedir_option *)((int)poVar36 + -0x2c));\n            local_230 = pHVar23;\n            if (pHVar23 == (Hash_table *)0x0) {\n              *(char **)((int)poVar36 + -0x2c) = local_200;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19153;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              *(undefined4 *)(poVar36 + -5) = 5;\n              *(char **)((int)poVar36 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(poVar36 + -6) = 0;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19168;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x1916f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x34) = pcVar18;\n              *(undefined4 *)(poVar36 + -7) = uVar19;\n              *(int *)((int)poVar36 + -0x3c) = *piVar21;\n              *(undefined4 *)(poVar36 + -8) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS) {\n              dst_back_sb.st_dev._4_4_ = 2;\n            }\n            if (*(char *)&pHVar23->bucket == '\0') {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              bVar32 = 1;\n            }\n            else {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              local_20c = &src_sb;\n              local_234 = (stat64 *)&tmp_dst_sb;\n              local_22c = (stat *)&local_copy_into_self;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_200;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1731f;\n                psVar20 = (stat *)file_name_concat(*(char **)(poVar36 + -6),\n                                                   *(char **)((int)poVar36 + -0x2c),\n                                                   *(char ***)(poVar36 + -5));\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_1f8;\n                local_214 = psVar20;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17336;\n                pcVar18 = file_name_concat(*(char **)(poVar36 + -6),*(char **)((int)poVar36 + -0x2c)\n                                           ,*(char ***)(poVar36 + -5));\n                p_Var7 = local_208;\n                cVar3 = *local_21c;\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(stat **)((int)poVar36 + -0x2c) = local_22c;\n                *(stat64 **)(poVar36 + -6) = local_234;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0;\n                *(stat64 **)(poVar36 + -7) = local_240;\n                *(stat64 **)((int)poVar36 + -0x3c) = local_238;\n                *(stat **)(poVar36 + -8) = local_20c;\n                psVar20 = local_214;\n                tmp_dst_sb.st_dev._0_1_ = cVar3;\n                *(undefined4 *)((int)poVar36 + -0x44) = 0x1737f;\n                _Var12 = copy_internal((char *)psVar20,pcVar18,SUB41(p_Var7,0),\n                                       *(stat **)(poVar36 + -8),*(dir_list **)((int)poVar36 + -0x3c)\n                                       ,*(cp_options **)(poVar36 + -7),\n                                       *(_Bool *)((int)poVar36 + -0x34),*(_Bool **)(poVar36 + -6),\n                                       *(_Bool **)((int)poVar36 + -0x2c),*(_Bool **)(poVar36 + -5));\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & _Var12);\n                *local_220 = (code)((byte)*local_220 | local_copy_into_self);\n                *(char **)(poVar36 + -6) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1739d;\n                free(*(void **)(poVar36 + -6));\n                *(stat **)(poVar36 + -6) = local_214;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x173a9;\n                free(*(void **)(poVar36 + -6));\n                if (local_copy_into_self != false) break;\n                local_228 = (dir_list *)\n                            CONCAT31(local_228._1_3_,\n                                     (byte)local_228._0_1_ | (byte)tmp_dst_sb.st_dev._0_1_);\n                *(Hash_table **)(poVar36 + -6) = pHVar23;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x172fe;\n                sVar24 = strlen(*(char **)(poVar36 + -6));\n                pHVar23 = (Hash_table *)((int)&pHVar23->bucket + sVar24 + 1);\n              } while (*(char *)&pHVar23->bucket != '\0');\n              bVar32 = (byte)local_224;\n            }\n            *(Hash_table **)(poVar36 + -6) = local_230;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x173ce;\n            free(*(void **)(poVar36 + -6));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar14 = 0;\n            local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n            bVar49 = false;\n            local_224 = CONCAT31(local_224._1_3_,bVar32);\nLAB_00016722:\n            if (local_1f0->dest_info != (Hash_table *)0x0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar49);\n              *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n              *(char **)((int)poVar42 + -0xc) = local_1f8;\n              *(undefined4 *)((int)poVar42 + -0x10) = 3;\n              *(undefined4 *)((int)poVar42 + -0x14) = 0x1674c;\n              iVar17 = __lxstat64(*(int *)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                                  *(stat64 **)((int)poVar42 + -8));\n              pcVar31 = local_1f0;\n              bVar49 = (byte)local_1fc;\n              if (iVar17 == 0) {\n                *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n                *(char **)((int)poVar42 + -0xc) = local_1f8;\n                *(Hash_table **)((int)poVar42 + -0x10) = pcVar31->dest_info;\n                *(undefined4 *)((int)poVar42 + -0x14) = 0x16772;\n                record_file(*(Hash_table **)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                            *(stat **)((int)poVar42 + -8));\n                bVar49 = (byte)local_1fc;\n              }\n            }\n            bVar32 = (byte)local_224;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            poVar36 = poVar42;\n            goto LAB_00016794;\n          }\n          local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          poVar36 = poVar36 + -4;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (_Bool *)CONCAT31(local_208._1_3_,local_1f0->symbolic_link);\n          poVar42 = poVar36;\n          if (local_1f0->symbolic_link != false) {\n            if (*local_200 != '/') {\n              uVar47 = poVar36 < (undefined1 *)0xc;\n              uVar48 = poVar36 == (off_t *)0xc;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1667f;\n              psVar20 = (stat *)dir_name(*(char **)(poVar36 + -2));\n              iVar17 = 2;\n              pbVar43 = &DAT_0002c142;\n              psVar46 = psVar20;\n              do {\n                if (iVar17 == 0) break;\n                iVar17 = iVar17 + -1;\n                bVar32 = (byte)psVar46->st_dev;\n                uVar47 = *pbVar43 < bVar32;\n                uVar48 = *pbVar43 == bVar32;\n                pbVar43 = pbVar43 + (uint)bVar49 * -2 + 1;\n                psVar46 = (stat *)((int)psVar46 + (uint)bVar49 * -2 + 1);\n              } while ((bool)uVar48);\n              if ((!(bool)uVar47 && !(bool)uVar48) != (bool)uVar47) {\n                local_20c = psVar20;\n                *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n                *(undefined1 **)((int)poVar36 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(poVar36 + -2) = 3;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x17ae0;\n                iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                   *(stat64 **)(poVar36 + -1));\n                psVar20 = local_20c;\n                if (iVar17 == 0) {\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(stat **)((int)poVar36 + -0xc) = psVar20;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x17b03;\n                  iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                     *(stat64 **)(poVar36 + -1));\n                  psVar20 = local_20c;\n                  if ((iVar17 == 0) &&\n                     (((tmp_dst_sb.st_ino._4_4_ != dst_back_sb.st_ino._4_4_ ||\n                        (char *)tmp_dst_sb.st_ino != (char *)dst_back_sb.st_ino ||\n                       (tmp_dst_sb.st_dev._4_4_ != dst_back_sb.st_dev._4_4_)) ||\n                      ((stat *)tmp_dst_sb.st_dev != (stat *)dst_back_sb.st_dev)))) {\n                    *(stat **)(poVar36 + -2) = local_20c;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b37;\n                    free(*(void **)(poVar36 + -2));\n                    *(char **)(poVar36 + -1) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b49;\n                    pcVar22 = quotearg_n_style_colon\n                                        ((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    pcVar18 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)((int)poVar36 + -0xc) = pcVar18;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x16e93;\n                    uVar19 = dcgettext();\n                    *(char **)((int)poVar36 + -0x14) = pcVar22;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(stat **)(poVar36 + -2) = psVar20;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x166ac;\n              free(*(void **)(poVar36 + -2));\n            }\n            *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n            *(char **)(poVar36 + -1) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x166cf;\n            iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                     *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n            bVar14 = 0;\n            if (iVar17 < 0) {\n              *(char **)(poVar36 + -1) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1898c;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              local_1f4 = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189a4;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189b9;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189c0;\n              piVar21 = __errno_location();\n              *(char **)(poVar36 + -2) = local_1f4;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (local_1f0->hard_link != false) {\n            _Var12 = local_1f0->unlink_dest_after_failed_open;\n            *(stat **)((int)poVar36 + -0xc) = local_20c;\n            pcVar22 = local_1f8;\n            bVar14 = 0;\n            *(undefined4 *)(poVar36 + -2) = 0;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18382;\n            _Var12 = create_hard_link(pcVar18,pcVar22,_Var12,SUB81(poVar36[-2],0),\n                                      *(_Bool *)((int)poVar36 + -0xc));\n            if (_Var12) goto LAB_000166da;\nLAB_00016fad:\n            poVar36 = poVar42;\n            if (local_1f0->preserve_security_context != false) {\nLAB_000177a0:\n              *(undefined4 *)((int)poVar36 + -4) = 0x177a5;\n              restore_default_fscreatecon_or_die();\n            }\n            if (local_214 == (stat *)0x0) {\n              *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n              *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18325;\n              forget_created(*(ino_t *)((int)poVar36 + -0x10),*(dev_t *)((int)poVar36 + -8));\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & local_1f0->copy_as_regular) != 0)) {\n            local_244 = src_sb.st_mode;\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->data_copy_required);\n            *(uint *)((int)poVar36 + -0xc) = (uint)(local_1f0->dereference == DEREF_NEVER) << 0x11;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17b97;\n            local_208 = (_Bool *)open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            if ((int)local_208 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18d03;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              poVar41 = poVar36 + -1;\n              *(undefined4 *)(poVar36 + -1) = 5;\n              pcVar18 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n            *(_Bool **)((int)poVar36 + -0xc) = local_208;\n            *(undefined4 *)(poVar36 + -2) = 3;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17bbf;\n            iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                *(stat64 **)(poVar36 + -1));\n            pcVar31 = local_1f0;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f4d;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f62;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f69;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              goto LAB_00018b73;\n            }\n            if ((src_sb.st_ino._4_4_ != tmp_dst_sb.st_ino._4_4_ ||\n                 (char *)src_sb.st_ino != (char *)tmp_dst_sb.st_ino) ||\n               (src_sb.st_dev._4_4_ != tmp_dst_sb.st_dev._4_4_ ||\n                (stat *)src_sb.st_dev != (stat *)tmp_dst_sb.st_dev)) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b5a;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "skipping file %s, as it was replaced while being copied";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b6f;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar28 = (code *)(~local_278 & local_284);\n              *(code **)(poVar36 + -1) = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xc1;\n              *(char **)(poVar36 + -2) = local_1f8;\n              local_21c = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190c8;\n              pdVar29 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n              local_228 = pdVar29;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar17 = *(int *)local_220;\n              bVar32 = iVar17 == 0x11 & (byte)((uint)pdVar29 >> 0x1f);\n              local_22c = (stat *)CONCAT31(local_22c._1_3_,bVar32);\n              if (bVar32 == 0) {\nLAB_00019445:\n                bVar32 = iVar17 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n                if (bVar32 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(poVar36 + -1) = (stat64 *)&dst_back_sb;\n                    *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                    *(undefined4 *)(poVar36 + -2) = 3;\n                    local_240 = (stat64 *)&dst_back_sb;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17c9e;\n                    iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                        *(stat64 **)(poVar36 + -1));\n                    if (iVar17 != 0) {\n                      *(int *)((int)poVar36 + -4) = iVar17;\n                      *(int *)(poVar36 + -1) = iVar17;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x198f9;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1990e;\n                      uVar19 = dcgettext();\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19915;\n                      piVar21 = __errno_location();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar19 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0->reflink_mode != REFLINK_NEVER) {\n                        *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                        *(_Bool **)(poVar36 + -1) = local_208;\n                        *(undefined4 *)((int)poVar36 + -0xc) = 0x40049409;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19d52;\n                        iVar17 = ioctl((int)poVar36[-2],*(ulong *)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_11;\n                        if (iVar17 == 0) goto LAB_000194e2;\n                        if (local_1f0->reflink_mode == REFLINK_ALWAYS) {\n                          *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                          *(char **)(poVar36 + -1) = local_200;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 1;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d7d;\n                          pcVar18 = quotearg_n_style((int)poVar36[-2],\n                                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                                     *(char **)(poVar36 + -1));\n                          *(char **)(poVar36 + -1) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d91;\n                          local_20c = (stat *)quotearg_n_style((int)poVar36[-2],\n                                                               *(quoting_style *)\n                                                                ((int)poVar36 + -0xc),\n                                                               *(char **)(poVar36 + -1));\n                          *(undefined4 *)(poVar36 + -1) = 5;\n                          *(char **)((int)poVar36 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19daa;\n                          uVar19 = dcgettext();\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19db1;\n                          piVar21 = __errno_location();\n                          psVar20 = local_20c;\n                          *(char **)(poVar36 + -2) = pcVar18;\n                          *(stat **)((int)poVar36 + -0x14) = psVar20;\n                          *(undefined4 *)(poVar36 + -3) = uVar19;\n                          *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                          *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)((int)poVar36 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)((int)poVar36 + -4) = 0x17ccd;\n                      uVar26 = getpagesize();\n                      uVar16 = dst_back_sb.st_blksize - 0x20000;\n                      local_25c = dst_back_sb.st_blksize;\n                      local_258 = (code *)dst_back_sb.st_blksize;\n                      if (0x1ffe0000 < uVar16) {\n                        local_258 = get_quoting_style;\n                        uVar16 = 0x200;\n                        if (dst_back_sb.st_blksize - 1U < 0x20000000) {\n                          uVar16 = dst_back_sb.st_blksize;\n                        }\n                        local_25c = uVar16;\n                      }\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(undefined4 *)((int)poVar36 + -0xc) = 2;\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0;\n                      *(undefined4 *)(poVar36 + -3) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(_Bool **)(poVar36 + -4) = local_208;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x17d28;\n                      fdadvise((int)poVar36[-4],*(off_t *)((int)poVar36 + -0x1c),\n                               *(off_t *)((int)poVar36 + -0x14),*(fadvice_t *)((int)poVar36 + -0xc))\n                      ;\n                      local_21c = (code *)(tmp_dst_sb.st_mode & 0xf000);\n                      bVar50 = false;\n                      if ((code *)(tmp_dst_sb.st_mode & 0xf000) == (code *)0x8000) {\n                        uVar16 = tmp_dst_sb.st_size._4_4_ >> 0x1f & 0x1ff;\n                        iVar17 = tmp_dst_sb.st_size._4_4_ +\n                                 (uint)CARRY4(uVar16,(uint)(code *)tmp_dst_sb.st_size);\n                        iVar15 = iVar17 >> 9;\n                        uVar16 = (uint)((uint)tmp_dst_sb.st_blocks <\n                                       ((uint)((code *)tmp_dst_sb.st_size + uVar16) >> 9 |\n                                       iVar17 * 0x800000));\n                        iVar17 = tmp_dst_sb.st_blocks._4_4_ - iVar15;\n                        bVar50 = (SBORROW4(tmp_dst_sb.st_blocks._4_4_,iVar15) !=\n                                 SBORROW4(iVar17,uVar16)) != (int)(iVar17 - uVar16) < 0;\n                      }\n                      local_220 = (code *)(uVar26 - 1);\n                      if ((dst_back_sb.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0->sparse_mode != SPARSE_ALWAYS) {\n                          if ((local_1f0->sparse_mode == SPARSE_AUTO) && (bVar50)) {\n                            *(code **)(poVar36 + -2) = local_258 + uVar26;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x199e0;\n                            local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                            local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                        -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19f62;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\nLAB_000199fc:\n                          local_274 = local_1f0->sparse_mode;\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\n                      else {\nLAB_00017d9d:\n                        local_220 = (code *)(0x7fffffff - uVar26);\n                        _Var27 = tmp_dst_sb.st_blksize;\n                        if (0x1ffe0000 < tmp_dst_sb.st_blksize - 0x20000U) {\n                          _Var27 = 0x20000;\n                        }\n                        *(undefined4 *)((int)poVar36 + -4) = 0x20000;\n                        *(code **)(poVar36 + -1) = (code *)(0x7fffffff - uVar26);\n                        *(code **)((int)poVar36 + -0xc) = local_258;\n                        *(__blksize_t *)(poVar36 + -2) = _Var27;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17dd4;\n                        pcVar28 = (code *)buffer_lcm(*(size_t *)(poVar36 + -2),\n                                                     *(size_t *)((int)poVar36 + -0xc),\n                                                     *(size_t *)(poVar36 + -1));\n                        if ((local_21c == (code *)0x8000) &&\n                           (tmp_dst_sb.st_size._4_4_ <\n                            (int)(uint)((code *)tmp_dst_sb.st_size < local_258))) {\n                          local_258 = (code *)tmp_dst_sb.st_size + 1;\n                        }\n                        local_21c = pcVar28 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar28);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar28;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17e2e;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\n                          local_285 = '\0';\n                          local_274 = SPARSE_NEVER;\nLAB_00019a18:\n                          pcVar28 = (code *)0x0;\n                          iVar17 = 0;\n                          local_21c = (code *)tmp_dst_sb.st_size;\n                          *(code **)((int)poVar36 + -4) = (code *)tmp_dst_sb.st_size;\n                          *(code **)(poVar36 + -1) = (code *)tmp_dst_sb.st_size;\n                          *(stat **)((int)poVar36 + -0xc) = (stat *)&local_copy_into_self;\n                          *(_Bool **)(poVar36 + -2) = local_208;\n                          local_218 = tmp_dst_sb.st_size._4_4_;\n                          local_22c = (stat *)&local_copy_into_self;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19a4e;\n                          extent_scan_init((int)poVar36[-2],*(extent_scan **)((int)poVar36 + -0xc));\n                          local_280 = &_GLOBAL_OFFSET_TABLE_;\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          do {\n                            *(stat **)(poVar36 + -2) = local_22c;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19a93;\n                            _Var12 = extent_scan_read(*(extent_scan **)(poVar36 + -2));\n                            ppuVar35 = local_280;\n                            if (!_Var12) {\n                              uVar19 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var_00,_Var12);\n                                  *(char **)(poVar36 + -1) = local_200;\n                                  *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1b5;\n                                  pcVar18 = quotearg_n_style_colon\n                                                      ((int)poVar36[-2],\n                                                       *(quoting_style *)((int)poVar36 + -0xc),\n                                                       *(char **)(poVar36 + -1));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  ppuVar35 = ppuVar35 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                uVar26 = 0;\n                                if (local_285 != '\0') {\n                                  uVar26 = local_25c;\n                                }\n                                uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                                local_25c = uVar26;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar28;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar17;\n                              do {\n                                puVar1 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar28 = (code *)*puVar1;\n                                iVar17 = puVar1[1];\n                                local_24c = puVar1[2];\n                                local_248 = puVar1[3];\n                                iVar34 = puVar1[3] + iVar17 + (uint)CARRY4(local_24c,(uint)pcVar28);\n                                iVar15 = local_218 - iVar34;\n                                if ((SBORROW4(local_218,iVar34) !=\n                                    SBORROW4(iVar15,(uint)(local_21c < pcVar28 + local_24c))) !=\n                                    (int)(iVar15 - (uint)(local_21c < pcVar28 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar17) !=\n                                      SBORROW4(local_218 - iVar17,(uint)(local_21c < pcVar28))) !=\n                                      (int)((local_218 - iVar17) - (uint)(local_21c < pcVar28)) < 0)\n                                  {\n                                    pcVar28 = local_21c;\n                                    iVar17 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar28;\n                                  local_248 = (local_218 - iVar17) - (uint)(local_21c < pcVar28);\n                                }\n                                local_254 = (code *)(((int)pcVar28 - (int)local_26c) - local_264);\n                                local_250 = (((iVar17 - local_268) - (uint)(pcVar28 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar28 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)((int)poVar36 + -4) = 0;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(code **)((int)poVar36 + -0xc) = pcVar28;\n                                  *(_Bool **)(poVar36 + -2) = local_208;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ca8;\n                                  _Var51 = lseek64((int)poVar36[-2],\n                                                   *(__off64_t *)((int)poVar36 + -0xc),\n                                                   *(int *)((int)poVar36 + -4));\n                                  pcVar18 = local_1f8;\n                                  pdVar29 = local_228;\n                                  if (_Var51 < 0) {\n                                    *(int *)((int)poVar36 + -4) = iVar17;\n                                    ppuVar35 = local_280;\n                                    *(int *)(poVar36 + -1) = iVar17;\n                                    *(char **)((int)poVar36 + -0xc) = local_200;\n                                    *(undefined4 *)(poVar36 + -2) = 4;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f22;\n                                    pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                             *(char **)((int)poVar36 + -0xc));\n                                    *(undefined4 *)(poVar36 + -1) = 5;\n                                    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                                    *(undefined4 *)(poVar36 + -2) = 0;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f37;\n                                    uVar19 = dcgettext();\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f3e;\n                                    piVar21 = __errno_location();\n                                    *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == SPARSE_NEVER) {\n                                    *(undefined4 *)((int)poVar36 + -4) = 0x19d2c;\n                                    _Var12 = write_zeros((int)pdVar29,*poVar36);\n                                    if (!_Var12) {\n                                      *(code **)((int)poVar36 + -4) = pcVar28;\n                                      ppuVar35 = local_280;\n                                      *(char **)(poVar36 + -1) = local_1f8;\n                                      *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                      *(undefined4 *)(poVar36 + -2) = 0;\n                                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a193;\n                                      pcVar18 = quotearg_n_style_colon\n                                                          ((int)poVar36[-2],\n                                                           *(quoting_style *)((int)poVar36 + -0xc),\n                                                           *(char **)(poVar36 + -1));\n                                      *(undefined4 *)(poVar36 + -1) = 5;\n                                      ppuVar35 = ppuVar35 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    uVar16 = 0;\n                                    goto LAB_00019af3;\n                                  }\n                                  bVar50 = local_274 == SPARSE_ALWAYS;\n                                  *(int *)((int)poVar36 + -0xc) = local_250;\n                                  *(code **)(poVar36 + -2) = local_254;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ce6;\n                                  _Var12 = create_hole((int)pdVar29,pcVar18,bVar50,poVar36[-2]);\n                                  local_20c = (stat *)CONCAT31(local_20c._1_3_,_Var12);\n                                  if (_Var12) goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar35 = local_280;\n                                  *(__uid_t *)(poVar36 + -2) = local_1bc;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19d0d;\n                                  free(*(void **)(poVar36 + -2));\n                                  bVar14 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                uVar16 = 0;\n                                if (local_274 == SPARSE_ALWAYS) {\n                                  uVar16 = local_25c;\n                                }\nLAB_00019af3:\n                                p_Var7 = local_27c;\n                                *(_Bool **)(poVar36 + -2) = &read_hole;\n                                *(_Bool **)((int)poVar36 + -0x14) = &wrote_hole_at_eof;\n                                pdVar29 = local_228;\n                                *(int *)(poVar36 + -3) = local_248;\n                                *(uint *)((int)poVar36 + -0x1c) = local_24c;\n                                *(char **)(poVar36 + -4) = local_1f8;\n                                *(char **)((int)poVar36 + -0x24) = local_200;\n                                *(undefined4 *)(poVar36 + -5) = 1;\n                                *(uint *)((int)poVar36 + -0x2c) = uVar16;\n                                p_Var9 = local_208;\n                                *(code **)(poVar36 + -6) = local_258;\n                                *(undefined4 *)((int)poVar36 + -0x34) = 0x19b3c;\n                                _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,\n                                                     *(size_t *)(poVar36 + -6),\n                                                     *(size_t *)((int)poVar36 + -0x2c),\n                                                     SUB81(poVar36[-5],0),\n                                                     *(char **)((int)poVar36 + -0x24),\n                                                     *(char **)(poVar36 + -4),\n                                                     *(uintmax_t *)((int)poVar36 + -0x1c),\n                                                     *(off_t **)((int)poVar36 + -0x14),\n                                                     *(_Bool **)(poVar36 + -2));\n                                if (!_Var12) goto LAB_00019cf7;\n                                local_250 = iVar17 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar28,_wrote_hole_at_eof);\n                                local_254 = pcVar28 + _wrote_hole_at_eof;\n                                uVar47 = (byte)local_20c;\n                                if (local_1d8 != 0 || _wrote_hole_at_eof != 0) {\n                                  uVar47 = read_hole;\n                                }\n                                local_20c = (stat *)CONCAT31(local_20c._1_3_,uVar47);\n                                if (local_250 == local_218 &&\n                                    pcVar28 + _wrote_hole_at_eof == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar28;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar17;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(__uid_t *)(poVar36 + -2) = local_1bc;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1969a;\n                            free(*(void **)(poVar36 + -2));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar19 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          pdVar29 = local_228;\n                          ppuVar35 = local_280;\n                          bVar50 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar50 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == SPARSE_NEVER) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a279;\n                            _Var12 = write_zeros((int)pdVar29,*poVar36);\n                            iVar17 = CONCAT31(extraout_var_01,_Var12);\n                            uVar19 = extraout_ECX_14;\n                            if (!_Var12) goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                            *(int *)(poVar36 + -1) = local_218;\n                            *(code **)((int)poVar36 + -0xc) = local_21c;\n                            *(dir_list **)(poVar36 + -2) = local_228;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1971b;\n                            iVar17 = ftruncate64((int)poVar36[-2],\n                                                 *(__off64_t *)((int)poVar36 + -0xc));\n                            pcVar8 = local_21c;\n                            pcVar28 = local_254;\n                            if (iVar17 != 0) goto LAB_00019fca;\n                            uVar19 = extraout_ECX_06;\n                            if ((local_274 == SPARSE_ALWAYS) && (bVar50)) {\n                              *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_00;\n                              iVar17 = local_250;\n                              *(undefined4 *)(poVar36 + -1) = extraout_EDX_00;\n                              *(uint *)((int)poVar36 + -0xc) =\n                                   (local_218 - iVar17) - (uint)(pcVar8 < pcVar28);\n                              *(int *)(poVar36 + -2) = (int)pcVar8 - (int)pcVar28;\n                              *(int *)((int)poVar36 + -0x14) = iVar17;\n                              *(code **)(poVar36 + -3) = pcVar28;\n                              *(undefined4 *)((int)poVar36 + -0x1c) = 3;\n                              *(dir_list **)(poVar36 + -4) = local_228;\n                              *(undefined4 *)((int)poVar36 + -0x24) = 0x1976c;\n                              iVar15 = fallocate64((int)poVar36[-4],*(int *)((int)poVar36 + -0x1c),\n                                                   poVar36[-3],poVar36[-2]);\n                              uVar19 = extraout_ECX_07;\n                              if (iVar15 < 0) {\n                                *(undefined4 *)((int)poVar36 + -4) = 0x1977c;\n                                piVar21 = __errno_location();\n                                uVar19 = extraout_ECX_08;\n                                if ((*piVar21 != 0x26) && (*piVar21 != 0x5f)) {\n                                  *(int *)((int)poVar36 + -4) = iVar17;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                  *(undefined4 *)(poVar36 + -2) = 4;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197a1;\n                                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                           *(char **)((int)poVar36 + -0xc));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb1fb;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197b6;\n                                  uVar19 = dcgettext();\n                                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_25c = 0;\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\nLAB_00017e78:\n                      p_Var7 = local_27c;\n                      *(_Bool **)(poVar36 + -2) = &wrote_hole_at_eof;\n                      pdVar29 = local_228;\n                      *(stat **)((int)poVar36 + -0x14) = local_22c;\n                      *(undefined4 *)(poVar36 + -3) = 0xffffffff;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n                      *(char **)(poVar36 + -4) = local_1f8;\n                      *(char **)((int)poVar36 + -0x24) = local_200;\n                      *(uint *)(poVar36 + -5) = uVar16;\n                      *(uint *)((int)poVar36 + -0x2c) = local_25c;\n                      p_Var9 = local_208;\n                      *(code **)(poVar36 + -6) = local_258;\n                      *(undefined4 *)((int)poVar36 + -0x34) = 0x17ebc;\n                      _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,*(size_t *)(poVar36 + -6)\n                                           ,*(size_t *)((int)poVar36 + -0x2c),SUB81(poVar36[-5],0),\n                                           *(char **)((int)poVar36 + -0x24),*(char **)(poVar36 + -4)\n                                           ,*(uintmax_t *)((int)poVar36 + -0x1c),\n                                           *(off_t **)((int)poVar36 + -0x14),\n                                           *(_Bool **)(poVar36 + -2));\n                      if (_Var12) {\n                        uVar19 = extraout_ECX_00;\n                        if (wrote_hole_at_eof != false) {\n                          *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var,_Var12);\n                          *(undefined4 *)(poVar36 + -1) = local_1d0;\n                          *(undefined4 *)((int)poVar36 + -0xc) = _local_copy_into_self;\n                          *(dir_list **)(poVar36 + -2) = local_228;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19fbf;\n                          iVar17 = ftruncate64((int)poVar36[-2],*(__off64_t *)((int)poVar36 + -0xc))\n                          ;\n                          uVar19 = extraout_ECX_13;\n                          if (iVar17 < 0) {\nLAB_00019fca:\n                            *(int *)((int)poVar36 + -4) = iVar17;\n                            *(int *)(poVar36 + -1) = iVar17;\n                            *(char **)((int)poVar36 + -0xc) = local_1f8;\n                            *(undefined4 *)(poVar36 + -2) = 4;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fd9;\n                            pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                     *(char **)((int)poVar36 + -0xc));\n                            *(undefined4 *)(poVar36 + -1) = 5;\n                            ppuVar35 = (undefined **)((int)ppuVar35 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                            *(undefined4 *)(poVar36 + -2) = 0;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fee;\n                            uVar19 = dcgettext();\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19ff5;\n                            piVar21 = __errno_location();\n                            *(char **)((int)poVar36 + -0x14) = pcVar18;\n                            *(undefined4 *)(poVar36 + -3) = uVar19;\n                            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                            *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar14 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (local_1f0->preserve_timestamps != false) {\n                      timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n                      timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n                      timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n                      timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n                      *(__syscall_slong_t *)((int)poVar36 + -4) = src_sb.st_mtim.tv_nsec;\n                      *(timespec **)(poVar36 + -1) = timespec;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(dir_list **)(poVar36 + -2) = local_228;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1988f;\n                      iVar17 = fdutimens((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                         *(timespec **)(poVar36 + -1));\n                      uVar19 = extraout_ECX_09;\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)(poVar36 + -1) = iVar17;\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        *(undefined4 *)(poVar36 + -2) = 4;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198a9;\n                        pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                 *(char **)((int)poVar36 + -0xc));\n                        *(undefined4 *)(poVar36 + -1) = 5;\n                        *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n                        *(undefined4 *)(poVar36 + -2) = 0;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198be;\n                        uVar19 = dcgettext();\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198c5;\n                        piVar21 = __errno_location();\n                        *(char **)((int)poVar36 + -0x14) = pcVar18;\n                        *(undefined4 *)(poVar36 + -3) = uVar19;\n                        *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                        *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)((int)poVar36 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    pcVar18 = local_1f8;\n                    pdVar29 = local_228;\n                    if ((local_1f0->preserve_ownership != false) &&\n                       ((src_sb.st_uid != dst_back_sb.st_uid ||\n                        (dst_back_sb.st_uid = dst_back_sb.st_gid,\n                        src_sb.st_gid != dst_back_sb.st_gid)))) {\n                      *(__uid_t *)((int)poVar36 + -4) = dst_back_sb.st_uid;\n                      uVar16 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(poVar36 + -1) = local_240;\n                      *(uint *)((int)poVar36 + -0xc) = uVar16;\n                      *(stat **)(poVar36 + -2) = &src_sb;\n                      pcVar31 = local_1f0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x17f33;\n                      iVar17 = set_owner(pcVar31,pcVar18,(int)pdVar29,*(stat **)(poVar36 + -2),\n                                         *(_Bool *)((int)poVar36 + -0xc),*(stat **)(poVar36 + -1));\n                      if (iVar17 == -1) goto LAB_000197c4;\n                      uVar19 = extraout_ECX_01;\n                      if (iVar17 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (local_1f0->preserve_xattr == false) {\nLAB_0001950b:\n                      bVar14 = 1;\n                    }\n                    else {\n                      pcVar31 = local_1f0;\n                      if ((dst_back_sb.st_mode & 0x80) == 0) {\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19e80;\n                        pcVar31 = (cp_options *)geteuid();\n                        pcVar18 = local_1f8;\n                        pdVar29 = local_228;\n                        if (pcVar31 == (cp_options *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19ea0;\n                        iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,0x180);\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        uVar16 = CONCAT31((int3)((uint)iVar17 >> 8),iVar17 == 0);\n                        *(uint *)((int)poVar36 + -4) = uVar16;\n                        *(uint *)(poVar36 + -1) = uVar16;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = pdVar29;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19ec7;\n                        bVar14 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_12;\n                        if (!(bool)bVar14) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                        *(cp_options **)(poVar36 + -1) = pcVar31;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17f8c;\n                        _Var12 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar16 = (uint)_Var12;\n                        uVar19 = extraout_ECX_02;\n                        if (_Var12) goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (stat *)CONCAT31(local_20c._1_3_,\n                                                     local_1f0->require_preserve_xattr);\n                        bVar14 = local_1f0->require_preserve_xattr ^ 1;\n                      }\n                      pcVar18 = local_1f8;\n                      pdVar29 = local_228;\n                      if ((char)uVar16 != '\0') {\n                        uVar16 = ~local_278 & local_284;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x17fd3;\n                        fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                        uVar19 = extraout_ECX_03;\n                      }\n                    }\n                    pcVar31 = local_1f0;\n                    if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n                      if (local_1f0->set_mode == false) {\n                        bVar49 = (byte)local_1f4 & local_1f0->explicit_no_preserve_mode;\n                        if (bVar49 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a00f;\n                            mVar30 = cached_umask();\n                            pcVar18 = local_1f8;\n                            pdVar29 = local_228;\n                            uVar16 = local_284;\n                            if ((local_278 & ~mVar30) != 0) {\n                              *(undefined4 *)((int)poVar36 + -4) = 0x1a034;\n                              iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                              if (iVar17 != 0) {\n                                *(int *)((int)poVar36 + -4) = iVar17;\n                                *(int *)(poVar36 + -1) = iVar17;\n                                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                *(undefined4 *)(poVar36 + -2) = 4;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a04b;\n                                local_21c = (code *)quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                                   *(char **)((int)poVar36 + -0xc));\n                                *(undefined4 *)(poVar36 + -1) = 5;\n                                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                                *(undefined4 *)(poVar36 + -2) = 0;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a064;\n                                local_20c = (stat *)dcgettext();\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a06f;\n                                piVar21 = __errno_location();\n                                psVar20 = local_20c;\n                                *(code **)((int)poVar36 + -0x14) = local_21c;\n                                *(stat **)(poVar36 + -3) = psVar20;\n                                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)((int)poVar36 + -4) = 0x1a1d2;\n                          mVar30 = cached_umask();\n                          *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_01;\n                          *(mode_t *)(poVar36 + -1) = ~mVar30 & 0x1b6;\n                          *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                          *(char **)(poVar36 + -2) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1ec;\n                          iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                           *(mode_t *)(poVar36 + -1));\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar49);\n                          if (iVar17 != 0) {\n                            bVar14 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                        *(mode_t *)(poVar36 + -1) = pcVar31->mode;\n                        *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                        *(char **)(poVar36 + -2) = local_1f8;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0e8;\n                        iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                         *(mode_t *)(poVar36 + -1));\n                        if (iVar17 != 0) {\n                          bVar14 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(poVar36 + -2) = local_244;\n                      *(dir_list **)((int)poVar36 + -0x14) = local_228;\n                      *(char **)(poVar36 + -3) = local_1f8;\n                      *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                      *(char **)(poVar36 + -4) = local_200;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x1961d;\n                      iVar17 = copy_acl(*(char **)(poVar36 + -4),*(int *)((int)poVar36 + -0x1c),\n                                        *(char **)(poVar36 + -3),*(int *)((int)poVar36 + -0x14),\n                                        *(mode_t *)(poVar36 + -2));\n                      if ((iVar17 != 0) && (local_1f0->require_preserve != false)) {\n                        bVar14 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar17 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar16 = 0xffffffff;\n                    pcVar18 = local_1f8;\n                    do {\n                      if (uVar16 == 0) break;\n                      uVar16 = uVar16 - 1;\n                      cVar13 = *pcVar18;\n                      pcVar18 = pcVar18 + (uint)bVar49 * -2 + 1;\n                    } while (cVar13 != '\0');\n                    iVar17 = (local_1f8[~uVar16 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar17 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n                if (local_1f0->move_mode == false) {\n                  *(uint *)((int)poVar36 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar32);\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x193f6;\n                  iVar15 = __lxstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                      *(stat64 **)(poVar36 + -1));\n                  if ((iVar15 == 0) && ((dst_back_sb.st_mode & 0xf000) == 0xa000)) {\n                    uVar16 = (uint)local_1f0->open_dangling_dest_symlink;\n                    if (local_1f0->open_dangling_dest_symlink == false) {\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a217;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a22c;\n                      uVar19 = dcgettext();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)((int)poVar36 + -4) = uVar16;\n                    *(code **)(poVar36 + -1) = local_21c;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 0x41;\n                    *(char **)(poVar36 + -2) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19434;\n                    local_228 = (dir_list *)\n                                open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n                    iVar17 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19126;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1913b;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = iVar17;\nLAB_00018b73:\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)((int)poVar36 + -0xc) =\n                 (-(uint)(local_1f0->data_copy_required == false) & 0xfffffe00) + 0x201;\n            *(char **)(poVar36 + -2) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17c4d;\n            local_228 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            pcVar10 = local_1f0;\n            if ((pcVar31->set_security_context == false) &&\n               (pcVar31->preserve_security_context == false)) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)((int)poVar36 + -4) = 0x19270;\n              piVar21 = __errno_location();\n              if (local_1f0->unlink_dest_after_failed_open == false) {\n                iVar17 = *piVar21;\n                if ((iVar17 == 2) && (local_1f0->move_mode == false)) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19290;\n              iVar17 = unlink(*(char **)(poVar36 + -2));\n              if (iVar17 != 0) {\n                *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                *(cp_options **)(poVar36 + -1) = pcVar31;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a104;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a119;\n                uVar19 = dcgettext();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                goto LAB_00018b73;\n              }\n              if (local_1f0->verbose != false) {\n                *(undefined4 *)((int)poVar36 + -4) = extraout_ECX_04;\n                *(undefined4 *)(poVar36 + -1) = extraout_ECX_04;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0aa;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "removed %s\n";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0bf;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -1) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n                *(undefined4 *)(poVar36 + -2) = 1;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->set_security_context);\n              if (local_1f0->set_security_context == false) goto LAB_000190a0;\n              *(cp_options **)(poVar36 + -2) = local_1f0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 1;\n              *(uint *)(poVar36 + -3) = local_284;\n              *(char **)((int)poVar36 + -0x1c) = local_1f8;\n              *(char **)(poVar36 + -4) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x24) = 0x192f1;\n              bVar14 = set_process_security_ctx\n                                 (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                                  *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                                  *(cp_options **)(poVar36 + -2));\n              if ((bool)bVar14) goto LAB_00019094;\n              local_220 = (code *)0x0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              _Var12 = local_1f0->preserve_security_context;\n              *(cp_options **)((int)poVar36 + -4) = local_1f0;\n              *(undefined4 *)(poVar36 + -1) = 0;\n              *(uint *)((int)poVar36 + -0xc) = (uint)_Var12;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1952e;\n              bVar14 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                  SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n              if ((bool)bVar14) {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,pcVar10->require_preserve_context);\n              if (pcVar10->require_preserve_context == false) goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\nLAB_00018028:\n              *(dir_list **)(poVar36 + -2) = local_228;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18036;\n              iVar17 = close((int)poVar36[-2]);\n              if (iVar17 < 0) {\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1964e;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19663;\n                uVar19 = dcgettext();\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1966a;\n                piVar21 = __errno_location();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)((int)poVar36 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(_Bool **)(poVar36 + -2) = local_208;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18056;\n            iVar17 = close((int)poVar36[-2]);\n            if (iVar17 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e7e;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e93;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e9a;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(poVar36 + -2) = local_220;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1806f;\n            free(*(void **)(poVar36 + -2));\n            local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n            if (bVar14 == 0) goto LAB_00016fad;\n          }\n          else {\n            bVar14 = 0;\n            if (local_238 == (stat64 *)0x1000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)0x0;\n              dst_back_sb.st_dev._4_4_ = 0;\n              uVar16 = ~local_23c & local_204;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              *(uint *)(poVar36 + -1) = uVar16;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18dbe;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(uint *)((int)poVar36 + -0xc) = uVar16 & 0xffffefff;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18de5;\n                iVar17 = mkfifo(*(char **)(poVar36 + -2),*(__mode_t *)((int)poVar36 + -0xc));\n                local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)(poVar36 + -1) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18e07;\n                  pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  poVar41 = poVar36 + -1;\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  pcVar18 = "cannot create fifo %s";\n                  goto LAB_00016f90;\n                }\n              }\n            }\n            else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)src_sb.st_rdev;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              dst_back_sb.st_dev._4_4_ = src_sb.st_rdev._4_4_;\n              *(uint *)(poVar36 + -1) = ~local_23c & local_204;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x16f59;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16f7c;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot create special file %s";\n                goto LAB_00016f90;\n              }\n            }\n            else {\n              if (local_238 != (stat64 *)0xa000) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18e30;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "%s has unknown file type";\n                goto LAB_00016e8b;\n              }\n              *(undefined4 *)((int)poVar36 + -0xc) = (undefined4)src_sb.st_size;\n              *(char **)(poVar36 + -2) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a38;\n              pcVar18 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                            *(size_t *)((int)poVar36 + -0xc));\n              if (pcVar18 == (char *)0x0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x194d0;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot read symbolic link %s";\n                goto LAB_00016f90;\n              }\n              *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n              *(char **)(poVar36 + -2) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a5e;\n              iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                       *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n              if (iVar17 < 0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x19315;\n                piVar21 = __errno_location();\n                local_208 = (_Bool *)*piVar21;\n                if ((_Bool *)*piVar21 == (_Bool *)0x0) goto LAB_00018a69;\n                if (((local_1f0->update != true) || ((byte)local_1f4 != '\0')) ||\n                   ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                  *(char **)(poVar36 + -2) = pcVar18;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19347;\n                  free(*(void **)(poVar36 + -2));\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19356;\n                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s";\n                  *(undefined4 *)(poVar36 + -2) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1936b;\n                  uVar19 = dcgettext();\n                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                  *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_0001937a;\n                  error();\n                }\n                uVar16 = 0xffffffff;\n                pcVar22 = pcVar18;\n                do {\n                  if (uVar16 == 0) break;\n                  uVar16 = uVar16 - 1;\n                  cVar13 = *pcVar22;\n                  pcVar22 = pcVar22 + (uint)bVar49 * -2 + 1;\n                } while (cVar13 != '\0');\n                iVar17 = ~uVar16 - 1;\n                if ((dst_sb.st_size._4_4_ != 0) || ((int)dst_sb.st_size != iVar17))\n                goto LAB_0001933e;\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(int *)((int)poVar36 + -0xc) = (int)dst_sb.st_size;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e2b;\n                pcVar22 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                              *(size_t *)((int)poVar36 + -0xc));\n                if (pcVar22 == (char *)0x0) goto LAB_0001933e;\n                *(char **)((int)poVar36 + -4) = pcVar22;\n                *(char **)(poVar36 + -1) = pcVar22;\n                *(char **)((int)poVar36 + -0xc) = pcVar18;\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e41;\n                iVar17 = strcmp(*(char **)(poVar36 + -2),*(char **)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(char **)(poVar36 + -2) = pcVar22;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a12b;\n                  free(*(void **)(poVar36 + -2));\n                  goto LAB_0001933e;\n                }\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e55;\n                free(*(void **)(poVar36 + -2));\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e5d;\n                free(*(void **)(poVar36 + -2));\n              }\n              else {\nLAB_00018a69:\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18a72;\n                free(*(void **)(poVar36 + -2));\n              }\n              if (local_1f0->preserve_security_context != false) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x193dc;\n                restore_default_fscreatecon_or_die();\n              }\n              local_208 = (_Bool *)CONCAT31(local_208._1_3_,1);\n              _Var12 = local_1f0->preserve_ownership;\n              bVar14 = _Var12;\n              if (_Var12 != false) {\n                *(__gid_t *)(poVar36 + -1) = src_sb.st_gid;\n                *(__uid_t *)((int)poVar36 + -0xc) = src_sb.st_uid;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18aba;\n                iVar17 = lchown(*(char **)(poVar36 + -2),*(__uid_t *)((int)poVar36 + -0xc),\n                                *(__gid_t *)(poVar36 + -1));\n                if (iVar17 == 0) {\n                  bVar14 = 0;\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                }\n                else {\n                  *(cp_options **)(poVar36 + -2) = local_1f0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18ad3;\n                  _Var12 = chown_failure_ok(*(cp_options **)(poVar36 + -2));\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                  if (!_Var12) {\n                    *(char **)((int)poVar36 + -4) = pcVar18;\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    *(char **)((int)poVar36 + -0xc) = "failed to preserve ownership for %s";\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19574;\n                    uVar19 = dcgettext();\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x1957b;\n                    piVar21 = __errno_location();\n                    *(char **)((int)poVar36 + -0x14) = local_1f8;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_0001958b;\n                    error();\n                  }\n                  bVar14 = 0;\n                }\n              }\n            }\n          }\nLAB_000166da:\n          bVar49 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->copy_as_regular);\n            _Var12 = (_Bool)((local_1f0->copy_as_regular ^ 1U) & bVar49);\n            if (_Var12 != false) {\n              _Var4 = local_1f0->preserve_security_context;\n              if ((local_1f0->set_security_context != false) || (bVar49 = _Var12, _Var4 != false)) {\n                *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(uint *)((int)poVar36 + -0xc) = (uint)_Var4;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x177d2;\n                bVar49 = set_file_security_ctx\n                                   (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                    SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n                if (!(bool)bVar49) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->require_preserve_context);\n                  bVar49 = _Var12;\n                  if (local_1f0->require_preserve_context != false) goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          bVar32 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((local_1f0->hard_link != false) && (bVar49 != 0)) || (bVar14 != 0))\n          goto LAB_0001614a;\n        }\n        if (local_1f0->preserve_timestamps == false) {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (local_1f0->preserve_xattr == false) goto LAB_0001614a;\n          *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n          pcVar22 = local_1f8;\n          pcVar18 = local_200;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x17511;\n          _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                             *(cp_options **)((int)poVar36 + -0xc));\n          if (_Var12) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve_xattr;\n        }\n        else {\n          timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n          timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n          timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n          timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n          if ((char)local_208 != '\0') {\n            *(timespec **)((int)poVar36 + -0xc) = timespec;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16805;\n            iVar17 = lutimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n            if (iVar17 != 0) {\n              *(undefined4 *)((int)poVar36 + -4) = 0x16811;\n              piVar21 = __errno_location();\n              if (*piVar21 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(timespec **)((int)poVar36 + -0xc) = timespec;\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18652;\n          iVar17 = utimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\nLAB_00016816:\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x10) = 4;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16826;\n            pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                     *(char **)((int)poVar36 + -0xc));\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16846;\n            piVar21 = __errno_location();\n            uVar16 = local_1fc;\n            *(char **)((int)poVar36 + -0x14) = pcVar18;\n            *(uint *)((int)poVar36 + -0x18) = uVar16;\n            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n            *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)((int)poVar36 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          pcVar18 = local_1f8;\n          if ((local_1f0->preserve_ownership != false) &&\n             ((((byte)local_1f4 != '\0' || (src_sb.st_uid != dst_sb.st_uid)) ||\n              (src_sb.st_gid != dst_sb.st_gid)))) {\n            *(stat **)((int)poVar36 + -8) = &dst_sb;\n            *(uint *)((int)poVar36 + -0xc) = (uint)local_1f4 & 0xff;\n            *(stat **)((int)poVar36 + -0x10) = &src_sb;\n            pcVar31 = local_1f0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x168d3;\n            iVar17 = set_owner(pcVar31,pcVar18,-1,*(stat **)((int)poVar36 + -0x10),\n                               *(_Bool *)((int)poVar36 + -0xc),*(stat **)((int)poVar36 + -8));\n            if (iVar17 == -1) goto LAB_00016148;\n            if (iVar17 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (local_1f0->preserve_xattr != false) {\n            *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18c76;\n            _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                               *(cp_options **)((int)poVar36 + -0xc));\n            if ((!_Var12) && (local_1f0->require_preserve_xattr != false)) goto LAB_00016148;\n          }\n          if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n            if (local_1f0->set_mode == false) {\n              if ((local_1f0->explicit_no_preserve_mode & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)((int)poVar36 + -4) = 0x191ba;\n                  mVar30 = cached_umask();\n                  local_23c = local_23c & ~mVar30;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(mode_t *)((int)poVar36 + -4) = ~mVar30;\n                      *(stat **)((int)poVar36 + -8) = &dst_sb;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)((int)poVar36 + -0x10) = 3;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19977;\n                      iVar17 = __lxstat64(*(int *)((int)poVar36 + -0x10),\n                                          *(char **)((int)poVar36 + -0xc),\n                                          *(stat64 **)((int)poVar36 + -8));\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)((int)poVar36 + -8) = iVar17;\n                        puVar37 = (undefined4 *)((int)poVar36 + -0xc);\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = dst_sb.st_mode;\n                    if ((local_23c & ~dst_sb.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)((int)poVar36 + -0xc) = local_270 | local_23c;\n                *(char **)((int)poVar36 + -0x10) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16976;\n                iVar17 = chmod(*(char **)((int)poVar36 + -0x10),*(__mode_t *)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)((int)poVar36 + -8) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x16990;\n                  pcVar22 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)((int)poVar36 + -8) = 5;\n                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169b0;\n                  piVar21 = __errno_location();\n                  pcVar18 = local_1f4;\n                  *(char **)((int)poVar36 + -0x14) = pcVar22;\n                  *(char **)((int)poVar36 + -0x18) = pcVar18;\n                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                  *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar16 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar16 = 0x1ff;\n              }\n              *(undefined4 *)((int)poVar36 + -4) = 0x191a8;\n              mVar30 = cached_umask();\n              *(mode_t *)((int)poVar36 + -8) = ~mVar30 & uVar16;\n            }\n            else {\n              *(mode_t *)((int)poVar36 + -8) = local_1f0->mode;\n            }\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffffff;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18ece;\n            iVar17 = set_acl(*(char **)((int)poVar36 + -0x10),*(int *)((int)poVar36 + -0xc),\n                             *(mode_t *)((int)poVar36 + -8));\n            if (iVar17 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)((int)poVar36 + -0x10) = local_204;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x18) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x20) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x183b6;\n          iVar17 = copy_acl(*(char **)((int)poVar36 + -0x20),*(int *)((int)poVar36 + -0x1c),\n                            *(char **)((int)poVar36 + -0x18),*(int *)((int)poVar36 + -0x14),\n                            *(mode_t *)((int)poVar36 + -0x10));\n          if (iVar17 == 0) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve;\n        }\n        if (cVar13 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  bVar32 = 0;\nLAB_0001614a:\n  if (iVar2 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return (_Bool)bVar32;\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)((int)poVar36 + -4) = 0x19855;\n  __stack_chk_fail_local();\n}\n\n" comment comment (function_definition "_Bool __regparm3\ncopy_internal(char *src_name,char *dst_name,_Bool new_dst,stat *parent,dir_list *ancestors,\n             cp_options *x,_Bool command_line_arg,_Bool *first_dir_created_per_command_line_arg,\n             _Bool *copy_into_self,_Bool *rename_succeeded)\n\n{\n  undefined4 *puVar1;\n  int iVar2;\n  code cVar3;\n  _Bool _Var4;\n  Interactive IVar5;\n  bool bVar6;\n  _Bool *p_Var7;\n  code *pcVar8;\n  _Bool *p_Var9;\n  cp_options *pcVar10;\n  __mode_t _Var11;\n  _Bool _Var12;\n  char cVar13;\n  byte bVar14;\n  int iVar15;\n  uint uVar16;\n  int iVar17;\n  char *pcVar18;\n  undefined4 uVar19;\n  stat *psVar20;\n  int *piVar21;\n  char *pcVar22;\n  Hash_table *pHVar23;\n  size_t sVar24;\n  Hash_table *pHVar25;\n  uint uVar26;\n  __blksize_t _Var27;\n  code *pcVar28;\n  undefined3 extraout_var;\n  dir_list *pdVar29;\n  mode_t mVar30;\n  undefined3 extraout_var_00;\n  cp_options *pcVar31;\n  undefined3 extraout_var_01;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar32;\n  stat64 *psVar33;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar34;\n  undefined4 extraout_EDX_01;\n  undefined **ppuVar35;\n  off_t *poVar36;\n  undefined4 *puVar37;\n  undefined4 *puVar38;\n  undefined1 *puVar39;\n  undefined1 *puVar40;\n  off_t *poVar41;\n  off_t *poVar42;\n  byte *pbVar43;\n  backup_type bVar44;\n  backup_type bVar45;\n  stat *psVar46;\n  int in_GS_OFFSET;\n  undefined1 uVar47;\n  undefined1 uVar48;\n  byte bVar49;\n  bool bVar50;\n  __off64_t _Var51;\n  undefined3 in_stack_00000011;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  _Bool *local_27c;\n  uint local_278;\n  Sparse_type local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  uint local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  Hash_table *local_230;\n  stat *local_22c;\n  dir_list *local_228;\n  __mode_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  stat *local_214;\n  __mode_t local_210;\n  stat *local_20c;\n  _Bool *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  cp_options *local_1f0;\n  _Bool read_hole;\n  _Bool wrote_hole_at_eof;\n  int local_1d8;\n  _Bool local_copy_into_self;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  __uid_t local_1bc;\n  stat src_sb;\n  stat dst_sb;\n  stat tmp_dst_sb;\n  stat dst_back_sb;\n  timespec timespec [2];\n  \n  bVar49 = 0;\n  ppuVar35 = &_GLOBAL_OFFSET_TABLE_;\n  local_200 = src_name;\n  local_1f8 = dst_name;\n  local_22c = parent;\n  local_220 = (code *)copy_into_self;\n  local_21c = (code *)first_dir_created_per_command_line_arg;\n  local_228 = ancestors;\n  local_208 = rename_succeeded;\n  local_1f0 = x;\n  local_1fc = _command_line_arg;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,new_dst);\n  local_224 = CONCAT31(local_224._1_3_,command_line_arg);\n  iVar2 = *(int *)(in_GS_OFFSET + 0x14);\n  *copy_into_self = false;\n  iVar17 = x->rename_errno;\n  if (x->move_mode != false) {\n    if (-1 < iVar17) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);\n    iVar17 = renameatu(-100,src_name,-100,dst_name,1);\n    if (iVar17 != 0) {\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\nLAB_000161c0:\n    if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar17 = 0;\n    pcVar18 = local_1f8;\n    if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;\nLAB_00015eb2:\n    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 == 0) goto LAB_00015ed4;\nLAB_0001620a:\n    puVar37 = (undefined4 *)&stack0xfffffd68;\nLAB_0001620e:\n    puVar37[-1] = 4;\n    puVar37[-2] = 0x16215;\n    pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);\n    puVar38 = puVar37 + 1;\n    puVar37[1] = 5;\n    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);\nLAB_00016222:\n    *(undefined ***)((int)puVar38 + -4) = ppuVar35;\n    *(undefined4 *)((int)puVar38 + -8) = 0;\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;\n    uVar19 = dcgettext();\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x16231;\n    piVar21 = __errno_location();\n    *(char **)((int)puVar38 + -0xc) = pcVar18;\n    *(undefined4 *)((int)puVar38 + -0x10) = uVar19;\n    *(int *)((int)puVar38 + -0x14) = *piVar21;\n    *(undefined4 *)((int)puVar38 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar17 == 0) goto LAB_000161c0;\n  if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n    pcVar18 = local_200;\n    if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;\nLAB_000161e8:\n    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 != 0) goto LAB_0001620a;\nLAB_00015ed4:\n    local_204 = src_sb.st_mode;\n    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }\n  }\nLAB_00015ef0:\n  puVar40 = auStack_28c;\n  poVar36 = (off_t *)auStack_28c;\n  puVar39 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)) {\n    local_20c = &src_sb;\n    if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }\n    record_file(pHVar23,local_200,local_20c);\n  }\n  local_20c = (stat *)0x1;\n  if (local_1f0->dereference != DEREF_ALWAYS) {\n    local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n    local_214 = (stat *)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    uVar16 = 0;\n    if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }\n    iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);\n    if (iVar17 < 0) {\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\n    pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));\n    puVar39 = auStack_28c;\n    if ((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;\n    poVar36 = (off_t *)auStack_28c;\n    if (local_1f0->preserve_security_context != false) {\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (stat *)((uint)local_214._1_3_ << 8);\n  local_230 = (Hash_table *)0x0;\nLAB_00016259:\n  puVar40 = puVar39;\n  if (((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0)) {\nLAB_00016338:\n    poVar36 = (off_t *)puVar40;\n    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }\n    if (iVar17 == 0) {\n      if (local_1f0->move_mode != false) goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar16 = src_sb.st_ino._4_4_;\n    pcVar18 = (char *)src_sb.st_ino;\n    if ((local_1f0->recursive != false) && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (stat *)src_sb.st_dev;\n      local_210 = src_sb.st_dev._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -8) = local_214;\n        *(uint *)((int)poVar36 + -0xc) = uVar16;\n        *(char **)((int)poVar36 + -0x10) = pcVar18;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163c0;\n        local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                               *(dev_t *)((int)poVar36 + -8));\n      }\n      else {\n        *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -0x14) = local_214;\n        *(uint *)((int)poVar36 + -0x18) = uVar16;\n        *(char **)((int)poVar36 + -0x1c) = pcVar18;\n        *(char **)((int)poVar36 + -0x20) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x176f4;\n        local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                            *(ino_t *)((int)poVar36 + -0x1c),\n                                            *(dev_t *)((int)poVar36 + -0x14));\n      }\n      if (local_214 != (stat *)0x0) {\nLAB_000163d3:\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163e7;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b02;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b16;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b2b;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x16406;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -0xc) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0x10) = 4;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18eee;\n          pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                   *(char **)((int)poVar36 + -0xc));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18f03;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0->dereference != DEREF_ALWAYS) &&\n           ((local_1f0->dereference != DEREF_COMMAND_LINE_ARGUMENTS || ((byte)local_1fc == '\0'))))\n        {\n          *(stat **)((int)poVar36 + -8) = local_214;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d3f;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d53;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d68;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar13 = local_1f0->move_mode;\nLAB_00016afb:\n      if (cVar13 == '\0') {\nLAB_00016b03:\n        local_208 = (_Bool *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar17 == 0x11) {\n          *(char **)((int)poVar36 + -0xc) = local_1f8;\n          *(char **)((int)poVar36 + -0x10) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x174bc;\n          iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x174cc;\n            piVar21 = __errno_location();\n            iVar17 = *piVar21;\n            if (iVar17 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (local_1f0->verbose != false) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "renamed ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18223;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1822d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18244;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n          }\n          if (local_1f0->set_security_context != false) {\n            *(cp_options **)((int)poVar36 + -4) = local_1f0;\n            *(undefined4 *)((int)poVar36 + -8) = 1;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18208;\n            set_file_security_ctx\n                      (*(char **)((int)poVar36 + -0x10),*(_Bool *)((int)poVar36 + -0xc),\n                       *(_Bool *)((int)poVar36 + -8),*(cp_options **)((int)poVar36 + -4));\n          }\n          if (local_208 != (_Bool *)0x0) {\n            *local_208 = true;\n          }\n          puVar39 = (undefined1 *)poVar36;\n          if (((byte)local_1fc != '\0') && (local_1f0->last_file == false)) {\n            *(stat **)((int)poVar36 + -8) = &src_sb;\n            pcVar31 = local_1f0;\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(Hash_table **)((int)poVar36 + -0x10) = pcVar31->dest_info;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17ab6;\n            record_file(*(Hash_table **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc),\n                        *(stat **)((int)poVar36 + -8));\n            bVar32 = (byte)local_1fc;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar17 == 0x16) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185ca;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185de;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185f3;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar17 != 0x12) {\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180a2;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_200;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          local_1f0 = (cp_options *)pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180ba;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180cf;\n          uVar19 = dcgettext();\n          *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(int *)((int)poVar36 + -0x1c) = iVar17;\n          goto LAB_00017594;\n        }\n        uVar16 = local_204 & 0xf000;\n        if (uVar16 == 0x4000) {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x1825e;\n          iVar17 = rmdir(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1826e;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x164d6;\n          iVar17 = unlink(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1753d;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) {\nLAB_00017548:\n              *(char **)((int)poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1755a;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(char **)((int)poVar36 + -8) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              local_1f0 = (cp_options *)pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17572;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(undefined4 *)((int)poVar36 + -8) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17587;\n              uVar19 = dcgettext();\n              *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\nLAB_00017594:\n              *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar32 = uVar16 != 0x4000 & local_1f0->verbose;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n          if (bVar32 != 0) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "copied ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a23;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a2d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a44;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n            local_208 = (_Bool *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (_Bool *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar13 = local_1f0->move_mode;\n    if ((_Bool)cVar13 == false) {\n      if (local_1f0->preserve_links == false) goto LAB_000165a0;\n      if (local_1f0->hard_link == false) goto LAB_00016ac0;\n      local_214 = (stat *)0x0;\n      goto LAB_00016b03;\n    }\n    if (src_sb.st_nlink != 1) {\n      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {\nLAB_00016ac0:\n        if ((1 < src_sb.st_nlink) ||\n           ((((byte)local_1fc != '\0' && (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS))\n            || (local_214 = (stat *)0x0, local_1f0->dereference == DEREF_ALWAYS)))) {\n          *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n          *(stat **)((int)poVar36 + -0x14) = (stat *)src_sb.st_dev;\n          *(uint *)((int)poVar36 + -0x18) = src_sb.st_ino._4_4_;\n          *(char **)((int)poVar36 + -0x1c) = (char *)src_sb.st_ino;\n          *(char **)((int)poVar36 + -0x20) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x1772e;\n          local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                              *(ino_t *)((int)poVar36 + -0x1c),\n                                              *(dev_t *)((int)poVar36 + -0x14));\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (stat *)0x0;\n      goto LAB_00016495;\n    }\n    *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n    *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n    *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n    *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x1834d;\n    local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                           *(dev_t *)((int)poVar36 + -8));\nLAB_00017737:\n    pcVar31 = local_1f0;\n    if (local_214 == (stat *)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(stat **)((int)poVar36 + -0xc) = local_20c;\n    pcVar18 = local_1f8;\n    *(uint *)((int)poVar36 + -0x10) = (uint)pcVar31->verbose;\n    psVar20 = local_214;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x17785;\n    _Var12 = create_hard_link((char *)psVar20,pcVar18,true,*(_Bool *)((int)poVar36 + -0x10),\n                              *(_Bool *)((int)poVar36 + -0xc));\n    puVar39 = (undefined1 *)poVar36;\n    if (_Var12) goto LAB_00016570;\n    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;\nLAB_00016fcb:\n    pHVar23 = local_230;\n    if (local_230 != (Hash_table *)0x0) {\n      *(char **)((int)poVar36 + -0xc) = local_1f8;\n      *(Hash_table **)((int)poVar36 + -0x10) = pHVar23;\n      *(undefined4 *)((int)poVar36 + -0x14) = 0x16fe8;\n      iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n      if (iVar17 != 0) {\n        *(char **)((int)poVar36 + -0xc) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x10) = 4;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x182f0;\n        pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                 *(char **)((int)poVar36 + -0xc));\n        puVar38 = (undefined4 *)((int)poVar36 + -8);\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        ppuVar35 = ppuVar35 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (local_1f0->verbose != false) {\n        *(char **)((int)poVar36 + -8) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 1;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17015;\n        pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(Hash_table **)((int)poVar36 + -8) = local_230;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17029;\n        pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        *(undefined ***)((int)poVar36 + -0xc) = ppuVar35 + -0x2bde;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x1703e;\n        uVar19 = dcgettext();\n        *(char **)((int)poVar36 + -0x14) = pcVar18;\n        *(char **)((int)poVar36 + -0x18) = pcVar22;\n        *(undefined4 *)((int)poVar36 + -0x1c) = uVar19;\n        *(undefined4 *)((int)poVar36 + -0x20) = 1;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if (local_1f0->move_mode != false) goto LAB_00016338;\n    if (local_1f0->backup_type == no_backups) {\n      psVar20 = &dst_sb;\n      if ((char)local_214 == '\0') {\n        *(stat **)(puVar40 + -8) = &dst_back_sb;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar40 + -0x10) = 3;\n        local_214 = &dst_back_sb;\n        *(undefined4 *)(puVar40 + -0x14) = 0x17a7d;\n        iVar15 = __lxstat64(*(int *)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                            *(stat64 **)(puVar40 + -8));\n        psVar20 = local_214;\n        if (iVar15 != 0) goto LAB_00016338;\n      }\n      pcVar31 = local_1f0;\n      if ((psVar20->st_mode & 0xf000) == 0xa000) {\n        *(stat **)(puVar40 + -8) = psVar20;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(Hash_table **)(puVar40 + -0x10) = pcVar31->dest_info;\n        *(undefined4 *)(puVar40 + -0x14) = 0x162d3;\n        _Var12 = seen_file(*(Hash_table **)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                           *(stat **)(puVar40 + -8));\n        if (_Var12) {\n          *(char **)(puVar40 + -8) = local_1f8;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 1;\n          *(undefined4 *)(puVar40 + -0x14) = 0x162ec;\n          pcVar18 = quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                     *(char **)(puVar40 + -8));\n          *(char **)(puVar40 + -8) = local_200;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16300;\n          local_1f0 = (cp_options *)\n                      quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                       *(char **)(puVar40 + -8));\n          *(undefined4 *)(puVar40 + -8) = 5;\n          *(char **)(puVar40 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16319;\n          uVar19 = dcgettext();\n          pcVar31 = local_1f0;\n          *(char **)(puVar40 + -0x10) = pcVar18;\n          *(cp_options **)(puVar40 + -0x14) = pcVar31;\n          *(undefined4 *)(puVar40 + -0x18) = uVar19;\n          *(undefined4 *)(puVar40 + -0x1c) = 0;\n          *(undefined4 *)(puVar40 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar40 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    poVar36 = (off_t *)puVar40;\n    if (local_1f0->verbose != false) goto LAB_00016b18;\n    if (iVar17 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_214 = (stat *)0x0;\n    local_208 = (_Bool *)((uint)local_1f4 & 0xff);\nLAB_000165b7:\n    local_234 = (stat64 *)(local_204 & 0xfff);\n    if (local_1f0->set_mode != false) {\n      local_234 = (stat64 *)(local_1f0->mode & 0xfff);\n    }\n    if (local_1f0->preserve_ownership == false) {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16dee;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        if (_Var12) {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16a82;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        local_23c = 0;\n        if (_Var12) goto LAB_0001664e;\n      }\n    }\n    else {\n      *(cp_options **)(poVar36 + -2) = local_1f0;\n      *(_Bool **)((int)poVar36 + -0x14) = local_208;\n      *(uint *)(poVar36 + -3) = local_204;\n      *(char **)((int)poVar36 + -0x1c) = local_1f8;\n      *(char **)(poVar36 + -4) = local_200;\n      *(undefined4 *)((int)poVar36 + -0x24) = 0x16618;\n      _Var12 = set_process_security_ctx\n                         (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                          *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                          *(cp_options **)(poVar36 + -2));\n      if (_Var12) {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          pcVar31 = local_1f0;\n          if (local_228 == (dir_list *)0x0) {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n          }\n          else {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n            pdVar29 = local_228;\n            do {\n              if ((*(uint *)((int)&pdVar29->ino + 4) == src_sb.st_ino._4_4_ &&\n                   *(char **)&pdVar29->ino == (char *)src_sb.st_ino) &&\n                 (src_sb.st_dev._4_4_ == *(__mode_t *)((int)&pdVar29->dev + 4) &&\n                  (stat *)src_sb.st_dev == *(stat **)&pdVar29->dev)) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16e7e;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              pdVar29 = pdVar29->parent;\n            } while (pdVar29 != (dir_list *)0x0);\n          }\n          local_20c = (stat *)src_sb.st_dev;\n          local_224 = src_sb.st_dev._4_4_;\n          local_238 = (stat64 *)((int)poVar36 - 0x11U & 0xfffffff0);\n          local_238->__pad1 = src_sb.st_ino._4_4_;\n          local_238->__st_ino = (__ino_t)(stat *)src_sb.st_dev;\n          *(dir_list **)&local_238->st_dev = local_228;\n          *(char **)((int)&local_238->st_dev + 4) = (char *)src_sb.st_ino;\n          local_238->st_mode = src_sb.st_dev._4_4_;\n          if (((byte)local_1f4 == '\0') && ((dst_sb.st_mode & 0xf000) == 0x4000)) {\n            if (local_1f0->set_security_context == false) {\n              bVar32 = local_1f0->preserve_security_context;\n              if ((_Bool)bVar32 != false) goto LAB_0001889e;\n            }\n            else {\n              bVar32 = local_1f0->preserve_security_context;\nLAB_0001889e:\n              *(cp_options **)((int)poVar36 + -0x24) = local_1f0;\n              *(undefined4 *)(poVar36 + -5) = 0;\n              *(uint *)((int)poVar36 + -0x2c) = (uint)bVar32;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x188b3;\n              _Var12 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -6),*(_Bool *)((int)poVar36 + -0x2c),\n                                  SUB81(poVar36[-5],0),*(cp_options **)((int)poVar36 + -0x24));\n              if ((!_Var12) && (poVar42 = poVar36 + -4, pcVar31->require_preserve_context != false))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)((int)poVar36 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(poVar36 + -6) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17154;\n            iVar17 = mkdir(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 100000;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)((int)poVar41 + -4) = pcVar18;\n              *(undefined4 *)((int)poVar41 + -8) = 0;\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f98;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f9f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar41 + -0xc) = pcVar22;\n              *(undefined4 *)((int)poVar41 + -0x10) = uVar19;\n              *(int *)((int)poVar41 + -0x14) = *piVar21;\n              *(undefined4 *)((int)poVar41 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar41 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat **)(poVar36 + -5) = &dst_sb;\n            *(char **)((int)poVar36 + -0x2c) = local_1f8;\n            *(undefined4 *)(poVar36 + -6) = 3;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17176;\n            iVar17 = __lxstat64((int)poVar36[-6],*(char **)((int)poVar36 + -0x2c),\n                                *(stat64 **)(poVar36 + -5));\n            _Var11 = dst_sb.st_mode;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x18ce1;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((dst_sb.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)((int)poVar36 + -0x2c) = dst_sb.st_mode | 0x1c0;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x171b2;\n              iVar17 = chmod(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n              local_270 = _Var11;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x19082;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                poVar41 = poVar36 + -5;\n                *(undefined4 *)(poVar36 + -5) = 5;\n                pcVar18 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__mode_t *)(poVar36 + -6) = dst_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -0x34) = (stat *)dst_sb.st_dev;\n              *(uint *)(poVar36 + -7) = dst_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x3c) = (char *)dst_sb.st_ino;\n              *(char **)(poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x44) = 0x18c19;\n              remember_copied(*(char **)(poVar36 + -8),*(ino_t *)((int)poVar36 + -0x3c),\n                              *(dev_t *)((int)poVar36 + -0x34));\n              *local_21c = (code)0x1;\n            }\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            if (local_1f0->verbose != false) {\n              if (local_1f0->move_mode == false) {\n                *(undefined4 *)((int)poVar36 + -0x24) = 0x18d28;\n                emit_verbose(pcVar18,pcVar22,(char *)0x0);\n              }\n              else {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x171ff;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                *(undefined4 *)(poVar36 + -5) = 5;\n                *(char **)((int)poVar36 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(poVar36 + -6) = 0;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17214;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -5) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x2c) = uVar19;\n                *(undefined4 *)(poVar36 + -6) = 1;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          poVar42 = poVar36 + -4;\n          bVar32 = local_22c != (stat *)0x0 & local_1f0->one_file_system;\n          if ((bVar32 == 0) ||\n             (*(__mode_t *)((int)&local_22c->st_dev + 4) == src_sb.st_dev._4_4_ &&\n              *(stat **)&local_22c->st_dev == (stat *)src_sb.st_dev)) {\n            local_240 = (stat64 *)&dst_back_sb;\n            pcVar31 = local_1f0;\n            psVar33 = (stat64 *)&dst_back_sb;\n            for (iVar17 = 0x11; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar33->st_dev = (char *)pcVar31->backup_type;\n              pcVar31 = (cp_options *)((int)pcVar31 + (uint)bVar49 * -8 + 4);\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n            }\n            *(undefined4 *)((int)poVar36 + -0x2c) = 2;\n            *(char **)(poVar36 + -6) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x1726d;\n            pHVar23 = (Hash_table *)\n                      savedir(*(char **)(poVar36 + -6),*(savedir_option *)((int)poVar36 + -0x2c));\n            local_230 = pHVar23;\n            if (pHVar23 == (Hash_table *)0x0) {\n              *(char **)((int)poVar36 + -0x2c) = local_200;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19153;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              *(undefined4 *)(poVar36 + -5) = 5;\n              *(char **)((int)poVar36 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(poVar36 + -6) = 0;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19168;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x1916f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x34) = pcVar18;\n              *(undefined4 *)(poVar36 + -7) = uVar19;\n              *(int *)((int)poVar36 + -0x3c) = *piVar21;\n              *(undefined4 *)(poVar36 + -8) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS) {\n              dst_back_sb.st_dev._4_4_ = 2;\n            }\n            if (*(char *)&pHVar23->bucket == '\0') {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              bVar32 = 1;\n            }\n            else {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              local_20c = &src_sb;\n              local_234 = (stat64 *)&tmp_dst_sb;\n              local_22c = (stat *)&local_copy_into_self;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_200;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1731f;\n                psVar20 = (stat *)file_name_concat(*(char **)(poVar36 + -6),\n                                                   *(char **)((int)poVar36 + -0x2c),\n                                                   *(char ***)(poVar36 + -5));\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_1f8;\n                local_214 = psVar20;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17336;\n                pcVar18 = file_name_concat(*(char **)(poVar36 + -6),*(char **)((int)poVar36 + -0x2c)\n                                           ,*(char ***)(poVar36 + -5));\n                p_Var7 = local_208;\n                cVar3 = *local_21c;\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(stat **)((int)poVar36 + -0x2c) = local_22c;\n                *(stat64 **)(poVar36 + -6) = local_234;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0;\n                *(stat64 **)(poVar36 + -7) = local_240;\n                *(stat64 **)((int)poVar36 + -0x3c) = local_238;\n                *(stat **)(poVar36 + -8) = local_20c;\n                psVar20 = local_214;\n                tmp_dst_sb.st_dev._0_1_ = cVar3;\n                *(undefined4 *)((int)poVar36 + -0x44) = 0x1737f;\n                _Var12 = copy_internal((char *)psVar20,pcVar18,SUB41(p_Var7,0),\n                                       *(stat **)(poVar36 + -8),*(dir_list **)((int)poVar36 + -0x3c)\n                                       ,*(cp_options **)(poVar36 + -7),\n                                       *(_Bool *)((int)poVar36 + -0x34),*(_Bool **)(poVar36 + -6),\n                                       *(_Bool **)((int)poVar36 + -0x2c),*(_Bool **)(poVar36 + -5));\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & _Var12);\n                *local_220 = (code)((byte)*local_220 | local_copy_into_self);\n                *(char **)(poVar36 + -6) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1739d;\n                free(*(void **)(poVar36 + -6));\n                *(stat **)(poVar36 + -6) = local_214;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x173a9;\n                free(*(void **)(poVar36 + -6));\n                if (local_copy_into_self != false) break;\n                local_228 = (dir_list *)\n                            CONCAT31(local_228._1_3_,\n                                     (byte)local_228._0_1_ | (byte)tmp_dst_sb.st_dev._0_1_);\n                *(Hash_table **)(poVar36 + -6) = pHVar23;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x172fe;\n                sVar24 = strlen(*(char **)(poVar36 + -6));\n                pHVar23 = (Hash_table *)((int)&pHVar23->bucket + sVar24 + 1);\n              } while (*(char *)&pHVar23->bucket != '\0');\n              bVar32 = (byte)local_224;\n            }\n            *(Hash_table **)(poVar36 + -6) = local_230;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x173ce;\n            free(*(void **)(poVar36 + -6));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar14 = 0;\n            local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n            bVar49 = false;\n            local_224 = CONCAT31(local_224._1_3_,bVar32);\nLAB_00016722:\n            if (local_1f0->dest_info != (Hash_table *)0x0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar49);\n              *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n              *(char **)((int)poVar42 + -0xc) = local_1f8;\n              *(undefined4 *)((int)poVar42 + -0x10) = 3;\n              *(undefined4 *)((int)poVar42 + -0x14) = 0x1674c;\n              iVar17 = __lxstat64(*(int *)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                                  *(stat64 **)((int)poVar42 + -8));\n              pcVar31 = local_1f0;\n              bVar49 = (byte)local_1fc;\n              if (iVar17 == 0) {\n                *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n                *(char **)((int)poVar42 + -0xc) = local_1f8;\n                *(Hash_table **)((int)poVar42 + -0x10) = pcVar31->dest_info;\n                *(undefined4 *)((int)poVar42 + -0x14) = 0x16772;\n                record_file(*(Hash_table **)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                            *(stat **)((int)poVar42 + -8));\n                bVar49 = (byte)local_1fc;\n              }\n            }\n            bVar32 = (byte)local_224;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            poVar36 = poVar42;\n            goto LAB_00016794;\n          }\n          local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          poVar36 = poVar36 + -4;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (_Bool *)CONCAT31(local_208._1_3_,local_1f0->symbolic_link);\n          poVar42 = poVar36;\n          if (local_1f0->symbolic_link != false) {\n            if (*local_200 != '/') {\n              uVar47 = poVar36 < (undefined1 *)0xc;\n              uVar48 = poVar36 == (off_t *)0xc;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1667f;\n              psVar20 = (stat *)dir_name(*(char **)(poVar36 + -2));\n              iVar17 = 2;\n              pbVar43 = &DAT_0002c142;\n              psVar46 = psVar20;\n              do {\n                if (iVar17 == 0) break;\n                iVar17 = iVar17 + -1;\n                bVar32 = (byte)psVar46->st_dev;\n                uVar47 = *pbVar43 < bVar32;\n                uVar48 = *pbVar43 == bVar32;\n                pbVar43 = pbVar43 + (uint)bVar49 * -2 + 1;\n                psVar46 = (stat *)((int)psVar46 + (uint)bVar49 * -2 + 1);\n              } while ((bool)uVar48);\n              if ((!(bool)uVar47 && !(bool)uVar48) != (bool)uVar47) {\n                local_20c = psVar20;\n                *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n                *(undefined1 **)((int)poVar36 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(poVar36 + -2) = 3;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x17ae0;\n                iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                   *(stat64 **)(poVar36 + -1));\n                psVar20 = local_20c;\n                if (iVar17 == 0) {\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(stat **)((int)poVar36 + -0xc) = psVar20;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x17b03;\n                  iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                     *(stat64 **)(poVar36 + -1));\n                  psVar20 = local_20c;\n                  if ((iVar17 == 0) &&\n                     (((tmp_dst_sb.st_ino._4_4_ != dst_back_sb.st_ino._4_4_ ||\n                        (char *)tmp_dst_sb.st_ino != (char *)dst_back_sb.st_ino ||\n                       (tmp_dst_sb.st_dev._4_4_ != dst_back_sb.st_dev._4_4_)) ||\n                      ((stat *)tmp_dst_sb.st_dev != (stat *)dst_back_sb.st_dev)))) {\n                    *(stat **)(poVar36 + -2) = local_20c;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b37;\n                    free(*(void **)(poVar36 + -2));\n                    *(char **)(poVar36 + -1) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b49;\n                    pcVar22 = quotearg_n_style_colon\n                                        ((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    pcVar18 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)((int)poVar36 + -0xc) = pcVar18;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x16e93;\n                    uVar19 = dcgettext();\n                    *(char **)((int)poVar36 + -0x14) = pcVar22;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(stat **)(poVar36 + -2) = psVar20;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x166ac;\n              free(*(void **)(poVar36 + -2));\n            }\n            *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n            *(char **)(poVar36 + -1) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x166cf;\n            iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                     *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n            bVar14 = 0;\n            if (iVar17 < 0) {\n              *(char **)(poVar36 + -1) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1898c;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              local_1f4 = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189a4;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189b9;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189c0;\n              piVar21 = __errno_location();\n              *(char **)(poVar36 + -2) = local_1f4;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (local_1f0->hard_link != false) {\n            _Var12 = local_1f0->unlink_dest_after_failed_open;\n            *(stat **)((int)poVar36 + -0xc) = local_20c;\n            pcVar22 = local_1f8;\n            bVar14 = 0;\n            *(undefined4 *)(poVar36 + -2) = 0;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18382;\n            _Var12 = create_hard_link(pcVar18,pcVar22,_Var12,SUB81(poVar36[-2],0),\n                                      *(_Bool *)((int)poVar36 + -0xc));\n            if (_Var12) goto LAB_000166da;\nLAB_00016fad:\n            poVar36 = poVar42;\n            if (local_1f0->preserve_security_context != false) {\nLAB_000177a0:\n              *(undefined4 *)((int)poVar36 + -4) = 0x177a5;\n              restore_default_fscreatecon_or_die();\n            }\n            if (local_214 == (stat *)0x0) {\n              *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n              *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18325;\n              forget_created(*(ino_t *)((int)poVar36 + -0x10),*(dev_t *)((int)poVar36 + -8));\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & local_1f0->copy_as_regular) != 0)) {\n            local_244 = src_sb.st_mode;\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->data_copy_required);\n            *(uint *)((int)poVar36 + -0xc) = (uint)(local_1f0->dereference == DEREF_NEVER) << 0x11;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17b97;\n            local_208 = (_Bool *)open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            if ((int)local_208 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18d03;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              poVar41 = poVar36 + -1;\n              *(undefined4 *)(poVar36 + -1) = 5;\n              pcVar18 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n            *(_Bool **)((int)poVar36 + -0xc) = local_208;\n            *(undefined4 *)(poVar36 + -2) = 3;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17bbf;\n            iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                *(stat64 **)(poVar36 + -1));\n            pcVar31 = local_1f0;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f4d;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f62;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f69;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              goto LAB_00018b73;\n            }\n            if ((src_sb.st_ino._4_4_ != tmp_dst_sb.st_ino._4_4_ ||\n                 (char *)src_sb.st_ino != (char *)tmp_dst_sb.st_ino) ||\n               (src_sb.st_dev._4_4_ != tmp_dst_sb.st_dev._4_4_ ||\n                (stat *)src_sb.st_dev != (stat *)tmp_dst_sb.st_dev)) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b5a;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "skipping file %s, as it was replaced while being copied";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b6f;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar28 = (code *)(~local_278 & local_284);\n              *(code **)(poVar36 + -1) = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xc1;\n              *(char **)(poVar36 + -2) = local_1f8;\n              local_21c = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190c8;\n              pdVar29 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n              local_228 = pdVar29;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar17 = *(int *)local_220;\n              bVar32 = iVar17 == 0x11 & (byte)((uint)pdVar29 >> 0x1f);\n              local_22c = (stat *)CONCAT31(local_22c._1_3_,bVar32);\n              if (bVar32 == 0) {\nLAB_00019445:\n                bVar32 = iVar17 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n                if (bVar32 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(poVar36 + -1) = (stat64 *)&dst_back_sb;\n                    *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                    *(undefined4 *)(poVar36 + -2) = 3;\n                    local_240 = (stat64 *)&dst_back_sb;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17c9e;\n                    iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                        *(stat64 **)(poVar36 + -1));\n                    if (iVar17 != 0) {\n                      *(int *)((int)poVar36 + -4) = iVar17;\n                      *(int *)(poVar36 + -1) = iVar17;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x198f9;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1990e;\n                      uVar19 = dcgettext();\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19915;\n                      piVar21 = __errno_location();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar19 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0->reflink_mode != REFLINK_NEVER) {\n                        *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                        *(_Bool **)(poVar36 + -1) = local_208;\n                        *(undefined4 *)((int)poVar36 + -0xc) = 0x40049409;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19d52;\n                        iVar17 = ioctl((int)poVar36[-2],*(ulong *)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_11;\n                        if (iVar17 == 0) goto LAB_000194e2;\n                        if (local_1f0->reflink_mode == REFLINK_ALWAYS) {\n                          *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                          *(char **)(poVar36 + -1) = local_200;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 1;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d7d;\n                          pcVar18 = quotearg_n_style((int)poVar36[-2],\n                                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                                     *(char **)(poVar36 + -1));\n                          *(char **)(poVar36 + -1) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d91;\n                          local_20c = (stat *)quotearg_n_style((int)poVar36[-2],\n                                                               *(quoting_style *)\n                                                                ((int)poVar36 + -0xc),\n                                                               *(char **)(poVar36 + -1));\n                          *(undefined4 *)(poVar36 + -1) = 5;\n                          *(char **)((int)poVar36 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19daa;\n                          uVar19 = dcgettext();\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19db1;\n                          piVar21 = __errno_location();\n                          psVar20 = local_20c;\n                          *(char **)(poVar36 + -2) = pcVar18;\n                          *(stat **)((int)poVar36 + -0x14) = psVar20;\n                          *(undefined4 *)(poVar36 + -3) = uVar19;\n                          *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                          *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)((int)poVar36 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)((int)poVar36 + -4) = 0x17ccd;\n                      uVar26 = getpagesize();\n                      uVar16 = dst_back_sb.st_blksize - 0x20000;\n                      local_25c = dst_back_sb.st_blksize;\n                      local_258 = (code *)dst_back_sb.st_blksize;\n                      if (0x1ffe0000 < uVar16) {\n                        local_258 = get_quoting_style;\n                        uVar16 = 0x200;\n                        if (dst_back_sb.st_blksize - 1U < 0x20000000) {\n                          uVar16 = dst_back_sb.st_blksize;\n                        }\n                        local_25c = uVar16;\n                      }\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(undefined4 *)((int)poVar36 + -0xc) = 2;\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0;\n                      *(undefined4 *)(poVar36 + -3) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(_Bool **)(poVar36 + -4) = local_208;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x17d28;\n                      fdadvise((int)poVar36[-4],*(off_t *)((int)poVar36 + -0x1c),\n                               *(off_t *)((int)poVar36 + -0x14),*(fadvice_t *)((int)poVar36 + -0xc))\n                      ;\n                      local_21c = (code *)(tmp_dst_sb.st_mode & 0xf000);\n                      bVar50 = false;\n                      if ((code *)(tmp_dst_sb.st_mode & 0xf000) == (code *)0x8000) {\n                        uVar16 = tmp_dst_sb.st_size._4_4_ >> 0x1f & 0x1ff;\n                        iVar17 = tmp_dst_sb.st_size._4_4_ +\n                                 (uint)CARRY4(uVar16,(uint)(code *)tmp_dst_sb.st_size);\n                        iVar15 = iVar17 >> 9;\n                        uVar16 = (uint)((uint)tmp_dst_sb.st_blocks <\n                                       ((uint)((code *)tmp_dst_sb.st_size + uVar16) >> 9 |\n                                       iVar17 * 0x800000));\n                        iVar17 = tmp_dst_sb.st_blocks._4_4_ - iVar15;\n                        bVar50 = (SBORROW4(tmp_dst_sb.st_blocks._4_4_,iVar15) !=\n                                 SBORROW4(iVar17,uVar16)) != (int)(iVar17 - uVar16) < 0;\n                      }\n                      local_220 = (code *)(uVar26 - 1);\n                      if ((dst_back_sb.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0->sparse_mode != SPARSE_ALWAYS) {\n                          if ((local_1f0->sparse_mode == SPARSE_AUTO) && (bVar50)) {\n                            *(code **)(poVar36 + -2) = local_258 + uVar26;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x199e0;\n                            local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                            local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                        -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19f62;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\nLAB_000199fc:\n                          local_274 = local_1f0->sparse_mode;\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\n                      else {\nLAB_00017d9d:\n                        local_220 = (code *)(0x7fffffff - uVar26);\n                        _Var27 = tmp_dst_sb.st_blksize;\n                        if (0x1ffe0000 < tmp_dst_sb.st_blksize - 0x20000U) {\n                          _Var27 = 0x20000;\n                        }\n                        *(undefined4 *)((int)poVar36 + -4) = 0x20000;\n                        *(code **)(poVar36 + -1) = (code *)(0x7fffffff - uVar26);\n                        *(code **)((int)poVar36 + -0xc) = local_258;\n                        *(__blksize_t *)(poVar36 + -2) = _Var27;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17dd4;\n                        pcVar28 = (code *)buffer_lcm(*(size_t *)(poVar36 + -2),\n                                                     *(size_t *)((int)poVar36 + -0xc),\n                                                     *(size_t *)(poVar36 + -1));\n                        if ((local_21c == (code *)0x8000) &&\n                           (tmp_dst_sb.st_size._4_4_ <\n                            (int)(uint)((code *)tmp_dst_sb.st_size < local_258))) {\n                          local_258 = (code *)tmp_dst_sb.st_size + 1;\n                        }\n                        local_21c = pcVar28 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar28);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar28;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17e2e;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\n                          local_285 = '\0';\n                          local_274 = SPARSE_NEVER;\nLAB_00019a18:\n                          pcVar28 = (code *)0x0;\n                          iVar17 = 0;\n                          local_21c = (code *)tmp_dst_sb.st_size;\n                          *(code **)((int)poVar36 + -4) = (code *)tmp_dst_sb.st_size;\n                          *(code **)(poVar36 + -1) = (code *)tmp_dst_sb.st_size;\n                          *(stat **)((int)poVar36 + -0xc) = (stat *)&local_copy_into_self;\n                          *(_Bool **)(poVar36 + -2) = local_208;\n                          local_218 = tmp_dst_sb.st_size._4_4_;\n                          local_22c = (stat *)&local_copy_into_self;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19a4e;\n                          extent_scan_init((int)poVar36[-2],*(extent_scan **)((int)poVar36 + -0xc));\n                          local_280 = &_GLOBAL_OFFSET_TABLE_;\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          do {\n                            *(stat **)(poVar36 + -2) = local_22c;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19a93;\n                            _Var12 = extent_scan_read(*(extent_scan **)(poVar36 + -2));\n                            ppuVar35 = local_280;\n                            if (!_Var12) {\n                              uVar19 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var_00,_Var12);\n                                  *(char **)(poVar36 + -1) = local_200;\n                                  *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1b5;\n                                  pcVar18 = quotearg_n_style_colon\n                                                      ((int)poVar36[-2],\n                                                       *(quoting_style *)((int)poVar36 + -0xc),\n                                                       *(char **)(poVar36 + -1));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  ppuVar35 = ppuVar35 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                uVar26 = 0;\n                                if (local_285 != '\0') {\n                                  uVar26 = local_25c;\n                                }\n                                uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                                local_25c = uVar26;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar28;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar17;\n                              do {\n                                puVar1 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar28 = (code *)*puVar1;\n                                iVar17 = puVar1[1];\n                                local_24c = puVar1[2];\n                                local_248 = puVar1[3];\n                                iVar34 = puVar1[3] + iVar17 + (uint)CARRY4(local_24c,(uint)pcVar28);\n                                iVar15 = local_218 - iVar34;\n                                if ((SBORROW4(local_218,iVar34) !=\n                                    SBORROW4(iVar15,(uint)(local_21c < pcVar28 + local_24c))) !=\n                                    (int)(iVar15 - (uint)(local_21c < pcVar28 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar17) !=\n                                      SBORROW4(local_218 - iVar17,(uint)(local_21c < pcVar28))) !=\n                                      (int)((local_218 - iVar17) - (uint)(local_21c < pcVar28)) < 0)\n                                  {\n                                    pcVar28 = local_21c;\n                                    iVar17 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar28;\n                                  local_248 = (local_218 - iVar17) - (uint)(local_21c < pcVar28);\n                                }\n                                local_254 = (code *)(((int)pcVar28 - (int)local_26c) - local_264);\n                                local_250 = (((iVar17 - local_268) - (uint)(pcVar28 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar28 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)((int)poVar36 + -4) = 0;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(code **)((int)poVar36 + -0xc) = pcVar28;\n                                  *(_Bool **)(poVar36 + -2) = local_208;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ca8;\n                                  _Var51 = lseek64((int)poVar36[-2],\n                                                   *(__off64_t *)((int)poVar36 + -0xc),\n                                                   *(int *)((int)poVar36 + -4));\n                                  pcVar18 = local_1f8;\n                                  pdVar29 = local_228;\n                                  if (_Var51 < 0) {\n                                    *(int *)((int)poVar36 + -4) = iVar17;\n                                    ppuVar35 = local_280;\n                                    *(int *)(poVar36 + -1) = iVar17;\n                                    *(char **)((int)poVar36 + -0xc) = local_200;\n                                    *(undefined4 *)(poVar36 + -2) = 4;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f22;\n                                    pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                             *(char **)((int)poVar36 + -0xc));\n                                    *(undefined4 *)(poVar36 + -1) = 5;\n                                    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                                    *(undefined4 *)(poVar36 + -2) = 0;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f37;\n                                    uVar19 = dcgettext();\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f3e;\n                                    piVar21 = __errno_location();\n                                    *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == SPARSE_NEVER) {\n                                    *(undefined4 *)((int)poVar36 + -4) = 0x19d2c;\n                                    _Var12 = write_zeros((int)pdVar29,*poVar36);\n                                    if (!_Var12) {\n                                      *(code **)((int)poVar36 + -4) = pcVar28;\n                                      ppuVar35 = local_280;\n                                      *(char **)(poVar36 + -1) = local_1f8;\n                                      *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                      *(undefined4 *)(poVar36 + -2) = 0;\n                                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a193;\n                                      pcVar18 = quotearg_n_style_colon\n                                                          ((int)poVar36[-2],\n                                                           *(quoting_style *)((int)poVar36 + -0xc),\n                                                           *(char **)(poVar36 + -1));\n                                      *(undefined4 *)(poVar36 + -1) = 5;\n                                      ppuVar35 = ppuVar35 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    uVar16 = 0;\n                                    goto LAB_00019af3;\n                                  }\n                                  bVar50 = local_274 == SPARSE_ALWAYS;\n                                  *(int *)((int)poVar36 + -0xc) = local_250;\n                                  *(code **)(poVar36 + -2) = local_254;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ce6;\n                                  _Var12 = create_hole((int)pdVar29,pcVar18,bVar50,poVar36[-2]);\n                                  local_20c = (stat *)CONCAT31(local_20c._1_3_,_Var12);\n                                  if (_Var12) goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar35 = local_280;\n                                  *(__uid_t *)(poVar36 + -2) = local_1bc;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19d0d;\n                                  free(*(void **)(poVar36 + -2));\n                                  bVar14 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                uVar16 = 0;\n                                if (local_274 == SPARSE_ALWAYS) {\n                                  uVar16 = local_25c;\n                                }\nLAB_00019af3:\n                                p_Var7 = local_27c;\n                                *(_Bool **)(poVar36 + -2) = &read_hole;\n                                *(_Bool **)((int)poVar36 + -0x14) = &wrote_hole_at_eof;\n                                pdVar29 = local_228;\n                                *(int *)(poVar36 + -3) = local_248;\n                                *(uint *)((int)poVar36 + -0x1c) = local_24c;\n                                *(char **)(poVar36 + -4) = local_1f8;\n                                *(char **)((int)poVar36 + -0x24) = local_200;\n                                *(undefined4 *)(poVar36 + -5) = 1;\n                                *(uint *)((int)poVar36 + -0x2c) = uVar16;\n                                p_Var9 = local_208;\n                                *(code **)(poVar36 + -6) = local_258;\n                                *(undefined4 *)((int)poVar36 + -0x34) = 0x19b3c;\n                                _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,\n                                                     *(size_t *)(poVar36 + -6),\n                                                     *(size_t *)((int)poVar36 + -0x2c),\n                                                     SUB81(poVar36[-5],0),\n                                                     *(char **)((int)poVar36 + -0x24),\n                                                     *(char **)(poVar36 + -4),\n                                                     *(uintmax_t *)((int)poVar36 + -0x1c),\n                                                     *(off_t **)((int)poVar36 + -0x14),\n                                                     *(_Bool **)(poVar36 + -2));\n                                if (!_Var12) goto LAB_00019cf7;\n                                local_250 = iVar17 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar28,_wrote_hole_at_eof);\n                                local_254 = pcVar28 + _wrote_hole_at_eof;\n                                uVar47 = (byte)local_20c;\n                                if (local_1d8 != 0 || _wrote_hole_at_eof != 0) {\n                                  uVar47 = read_hole;\n                                }\n                                local_20c = (stat *)CONCAT31(local_20c._1_3_,uVar47);\n                                if (local_250 == local_218 &&\n                                    pcVar28 + _wrote_hole_at_eof == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar28;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar17;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(__uid_t *)(poVar36 + -2) = local_1bc;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1969a;\n                            free(*(void **)(poVar36 + -2));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar19 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          pdVar29 = local_228;\n                          ppuVar35 = local_280;\n                          bVar50 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar50 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == SPARSE_NEVER) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a279;\n                            _Var12 = write_zeros((int)pdVar29,*poVar36);\n                            iVar17 = CONCAT31(extraout_var_01,_Var12);\n                            uVar19 = extraout_ECX_14;\n                            if (!_Var12) goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                            *(int *)(poVar36 + -1) = local_218;\n                            *(code **)((int)poVar36 + -0xc) = local_21c;\n                            *(dir_list **)(poVar36 + -2) = local_228;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1971b;\n                            iVar17 = ftruncate64((int)poVar36[-2],\n                                                 *(__off64_t *)((int)poVar36 + -0xc));\n                            pcVar8 = local_21c;\n                            pcVar28 = local_254;\n                            if (iVar17 != 0) goto LAB_00019fca;\n                            uVar19 = extraout_ECX_06;\n                            if ((local_274 == SPARSE_ALWAYS) && (bVar50)) {\n                              *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_00;\n                              iVar17 = local_250;\n                              *(undefined4 *)(poVar36 + -1) = extraout_EDX_00;\n                              *(uint *)((int)poVar36 + -0xc) =\n                                   (local_218 - iVar17) - (uint)(pcVar8 < pcVar28);\n                              *(int *)(poVar36 + -2) = (int)pcVar8 - (int)pcVar28;\n                              *(int *)((int)poVar36 + -0x14) = iVar17;\n                              *(code **)(poVar36 + -3) = pcVar28;\n                              *(undefined4 *)((int)poVar36 + -0x1c) = 3;\n                              *(dir_list **)(poVar36 + -4) = local_228;\n                              *(undefined4 *)((int)poVar36 + -0x24) = 0x1976c;\n                              iVar15 = fallocate64((int)poVar36[-4],*(int *)((int)poVar36 + -0x1c),\n                                                   poVar36[-3],poVar36[-2]);\n                              uVar19 = extraout_ECX_07;\n                              if (iVar15 < 0) {\n                                *(undefined4 *)((int)poVar36 + -4) = 0x1977c;\n                                piVar21 = __errno_location();\n                                uVar19 = extraout_ECX_08;\n                                if ((*piVar21 != 0x26) && (*piVar21 != 0x5f)) {\n                                  *(int *)((int)poVar36 + -4) = iVar17;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                  *(undefined4 *)(poVar36 + -2) = 4;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197a1;\n                                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                           *(char **)((int)poVar36 + -0xc));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb1fb;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197b6;\n                                  uVar19 = dcgettext();\n                                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_25c = 0;\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\nLAB_00017e78:\n                      p_Var7 = local_27c;\n                      *(_Bool **)(poVar36 + -2) = &wrote_hole_at_eof;\n                      pdVar29 = local_228;\n                      *(stat **)((int)poVar36 + -0x14) = local_22c;\n                      *(undefined4 *)(poVar36 + -3) = 0xffffffff;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n                      *(char **)(poVar36 + -4) = local_1f8;\n                      *(char **)((int)poVar36 + -0x24) = local_200;\n                      *(uint *)(poVar36 + -5) = uVar16;\n                      *(uint *)((int)poVar36 + -0x2c) = local_25c;\n                      p_Var9 = local_208;\n                      *(code **)(poVar36 + -6) = local_258;\n                      *(undefined4 *)((int)poVar36 + -0x34) = 0x17ebc;\n                      _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,*(size_t *)(poVar36 + -6)\n                                           ,*(size_t *)((int)poVar36 + -0x2c),SUB81(poVar36[-5],0),\n                                           *(char **)((int)poVar36 + -0x24),*(char **)(poVar36 + -4)\n                                           ,*(uintmax_t *)((int)poVar36 + -0x1c),\n                                           *(off_t **)((int)poVar36 + -0x14),\n                                           *(_Bool **)(poVar36 + -2));\n                      if (_Var12) {\n                        uVar19 = extraout_ECX_00;\n                        if (wrote_hole_at_eof != false) {\n                          *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var,_Var12);\n                          *(undefined4 *)(poVar36 + -1) = local_1d0;\n                          *(undefined4 *)((int)poVar36 + -0xc) = _local_copy_into_self;\n                          *(dir_list **)(poVar36 + -2) = local_228;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19fbf;\n                          iVar17 = ftruncate64((int)poVar36[-2],*(__off64_t *)((int)poVar36 + -0xc))\n                          ;\n                          uVar19 = extraout_ECX_13;\n                          if (iVar17 < 0) {\nLAB_00019fca:\n                            *(int *)((int)poVar36 + -4) = iVar17;\n                            *(int *)(poVar36 + -1) = iVar17;\n                            *(char **)((int)poVar36 + -0xc) = local_1f8;\n                            *(undefined4 *)(poVar36 + -2) = 4;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fd9;\n                            pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                     *(char **)((int)poVar36 + -0xc));\n                            *(undefined4 *)(poVar36 + -1) = 5;\n                            ppuVar35 = (undefined **)((int)ppuVar35 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                            *(undefined4 *)(poVar36 + -2) = 0;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fee;\n                            uVar19 = dcgettext();\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19ff5;\n                            piVar21 = __errno_location();\n                            *(char **)((int)poVar36 + -0x14) = pcVar18;\n                            *(undefined4 *)(poVar36 + -3) = uVar19;\n                            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                            *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar14 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (local_1f0->preserve_timestamps != false) {\n                      timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n                      timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n                      timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n                      timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n                      *(__syscall_slong_t *)((int)poVar36 + -4) = src_sb.st_mtim.tv_nsec;\n                      *(timespec **)(poVar36 + -1) = timespec;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(dir_list **)(poVar36 + -2) = local_228;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1988f;\n                      iVar17 = fdutimens((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                         *(timespec **)(poVar36 + -1));\n                      uVar19 = extraout_ECX_09;\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)(poVar36 + -1) = iVar17;\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        *(undefined4 *)(poVar36 + -2) = 4;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198a9;\n                        pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                 *(char **)((int)poVar36 + -0xc));\n                        *(undefined4 *)(poVar36 + -1) = 5;\n                        *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n                        *(undefined4 *)(poVar36 + -2) = 0;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198be;\n                        uVar19 = dcgettext();\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198c5;\n                        piVar21 = __errno_location();\n                        *(char **)((int)poVar36 + -0x14) = pcVar18;\n                        *(undefined4 *)(poVar36 + -3) = uVar19;\n                        *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                        *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)((int)poVar36 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    pcVar18 = local_1f8;\n                    pdVar29 = local_228;\n                    if ((local_1f0->preserve_ownership != false) &&\n                       ((src_sb.st_uid != dst_back_sb.st_uid ||\n                        (dst_back_sb.st_uid = dst_back_sb.st_gid,\n                        src_sb.st_gid != dst_back_sb.st_gid)))) {\n                      *(__uid_t *)((int)poVar36 + -4) = dst_back_sb.st_uid;\n                      uVar16 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(poVar36 + -1) = local_240;\n                      *(uint *)((int)poVar36 + -0xc) = uVar16;\n                      *(stat **)(poVar36 + -2) = &src_sb;\n                      pcVar31 = local_1f0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x17f33;\n                      iVar17 = set_owner(pcVar31,pcVar18,(int)pdVar29,*(stat **)(poVar36 + -2),\n                                         *(_Bool *)((int)poVar36 + -0xc),*(stat **)(poVar36 + -1));\n                      if (iVar17 == -1) goto LAB_000197c4;\n                      uVar19 = extraout_ECX_01;\n                      if (iVar17 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (local_1f0->preserve_xattr == false) {\nLAB_0001950b:\n                      bVar14 = 1;\n                    }\n                    else {\n                      pcVar31 = local_1f0;\n                      if ((dst_back_sb.st_mode & 0x80) == 0) {\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19e80;\n                        pcVar31 = (cp_options *)geteuid();\n                        pcVar18 = local_1f8;\n                        pdVar29 = local_228;\n                        if (pcVar31 == (cp_options *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19ea0;\n                        iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,0x180);\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        uVar16 = CONCAT31((int3)((uint)iVar17 >> 8),iVar17 == 0);\n                        *(uint *)((int)poVar36 + -4) = uVar16;\n                        *(uint *)(poVar36 + -1) = uVar16;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = pdVar29;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19ec7;\n                        bVar14 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_12;\n                        if (!(bool)bVar14) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                        *(cp_options **)(poVar36 + -1) = pcVar31;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17f8c;\n                        _Var12 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar16 = (uint)_Var12;\n                        uVar19 = extraout_ECX_02;\n                        if (_Var12) goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (stat *)CONCAT31(local_20c._1_3_,\n                                                     local_1f0->require_preserve_xattr);\n                        bVar14 = local_1f0->require_preserve_xattr ^ 1;\n                      }\n                      pcVar18 = local_1f8;\n                      pdVar29 = local_228;\n                      if ((char)uVar16 != '\0') {\n                        uVar16 = ~local_278 & local_284;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x17fd3;\n                        fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                        uVar19 = extraout_ECX_03;\n                      }\n                    }\n                    pcVar31 = local_1f0;\n                    if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n                      if (local_1f0->set_mode == false) {\n                        bVar49 = (byte)local_1f4 & local_1f0->explicit_no_preserve_mode;\n                        if (bVar49 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a00f;\n                            mVar30 = cached_umask();\n                            pcVar18 = local_1f8;\n                            pdVar29 = local_228;\n                            uVar16 = local_284;\n                            if ((local_278 & ~mVar30) != 0) {\n                              *(undefined4 *)((int)poVar36 + -4) = 0x1a034;\n                              iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                              if (iVar17 != 0) {\n                                *(int *)((int)poVar36 + -4) = iVar17;\n                                *(int *)(poVar36 + -1) = iVar17;\n                                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                *(undefined4 *)(poVar36 + -2) = 4;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a04b;\n                                local_21c = (code *)quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                                   *(char **)((int)poVar36 + -0xc));\n                                *(undefined4 *)(poVar36 + -1) = 5;\n                                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                                *(undefined4 *)(poVar36 + -2) = 0;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a064;\n                                local_20c = (stat *)dcgettext();\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a06f;\n                                piVar21 = __errno_location();\n                                psVar20 = local_20c;\n                                *(code **)((int)poVar36 + -0x14) = local_21c;\n                                *(stat **)(poVar36 + -3) = psVar20;\n                                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)((int)poVar36 + -4) = 0x1a1d2;\n                          mVar30 = cached_umask();\n                          *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_01;\n                          *(mode_t *)(poVar36 + -1) = ~mVar30 & 0x1b6;\n                          *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                          *(char **)(poVar36 + -2) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1ec;\n                          iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                           *(mode_t *)(poVar36 + -1));\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar49);\n                          if (iVar17 != 0) {\n                            bVar14 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                        *(mode_t *)(poVar36 + -1) = pcVar31->mode;\n                        *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                        *(char **)(poVar36 + -2) = local_1f8;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0e8;\n                        iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                         *(mode_t *)(poVar36 + -1));\n                        if (iVar17 != 0) {\n                          bVar14 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(poVar36 + -2) = local_244;\n                      *(dir_list **)((int)poVar36 + -0x14) = local_228;\n                      *(char **)(poVar36 + -3) = local_1f8;\n                      *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                      *(char **)(poVar36 + -4) = local_200;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x1961d;\n                      iVar17 = copy_acl(*(char **)(poVar36 + -4),*(int *)((int)poVar36 + -0x1c),\n                                        *(char **)(poVar36 + -3),*(int *)((int)poVar36 + -0x14),\n                                        *(mode_t *)(poVar36 + -2));\n                      if ((iVar17 != 0) && (local_1f0->require_preserve != false)) {\n                        bVar14 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar17 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar16 = 0xffffffff;\n                    pcVar18 = local_1f8;\n                    do {\n                      if (uVar16 == 0) break;\n                      uVar16 = uVar16 - 1;\n                      cVar13 = *pcVar18;\n                      pcVar18 = pcVar18 + (uint)bVar49 * -2 + 1;\n                    } while (cVar13 != '\0');\n                    iVar17 = (local_1f8[~uVar16 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar17 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n                if (local_1f0->move_mode == false) {\n                  *(uint *)((int)poVar36 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar32);\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x193f6;\n                  iVar15 = __lxstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                      *(stat64 **)(poVar36 + -1));\n                  if ((iVar15 == 0) && ((dst_back_sb.st_mode & 0xf000) == 0xa000)) {\n                    uVar16 = (uint)local_1f0->open_dangling_dest_symlink;\n                    if (local_1f0->open_dangling_dest_symlink == false) {\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a217;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a22c;\n                      uVar19 = dcgettext();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)((int)poVar36 + -4) = uVar16;\n                    *(code **)(poVar36 + -1) = local_21c;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 0x41;\n                    *(char **)(poVar36 + -2) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19434;\n                    local_228 = (dir_list *)\n                                open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n                    iVar17 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19126;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1913b;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = iVar17;\nLAB_00018b73:\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)((int)poVar36 + -0xc) =\n                 (-(uint)(local_1f0->data_copy_required == false) & 0xfffffe00) + 0x201;\n            *(char **)(poVar36 + -2) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17c4d;\n            local_228 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            pcVar10 = local_1f0;\n            if ((pcVar31->set_security_context == false) &&\n               (pcVar31->preserve_security_context == false)) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)((int)poVar36 + -4) = 0x19270;\n              piVar21 = __errno_location();\n              if (local_1f0->unlink_dest_after_failed_open == false) {\n                iVar17 = *piVar21;\n                if ((iVar17 == 2) && (local_1f0->move_mode == false)) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19290;\n              iVar17 = unlink(*(char **)(poVar36 + -2));\n              if (iVar17 != 0) {\n                *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                *(cp_options **)(poVar36 + -1) = pcVar31;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a104;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a119;\n                uVar19 = dcgettext();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                goto LAB_00018b73;\n              }\n              if (local_1f0->verbose != false) {\n                *(undefined4 *)((int)poVar36 + -4) = extraout_ECX_04;\n                *(undefined4 *)(poVar36 + -1) = extraout_ECX_04;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0aa;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "removed %s\n";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0bf;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -1) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n                *(undefined4 *)(poVar36 + -2) = 1;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->set_security_context);\n              if (local_1f0->set_security_context == false) goto LAB_000190a0;\n              *(cp_options **)(poVar36 + -2) = local_1f0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 1;\n              *(uint *)(poVar36 + -3) = local_284;\n              *(char **)((int)poVar36 + -0x1c) = local_1f8;\n              *(char **)(poVar36 + -4) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x24) = 0x192f1;\n              bVar14 = set_process_security_ctx\n                                 (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                                  *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                                  *(cp_options **)(poVar36 + -2));\n              if ((bool)bVar14) goto LAB_00019094;\n              local_220 = (code *)0x0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              _Var12 = local_1f0->preserve_security_context;\n              *(cp_options **)((int)poVar36 + -4) = local_1f0;\n              *(undefined4 *)(poVar36 + -1) = 0;\n              *(uint *)((int)poVar36 + -0xc) = (uint)_Var12;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1952e;\n              bVar14 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                  SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n              if ((bool)bVar14) {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,pcVar10->require_preserve_context);\n              if (pcVar10->require_preserve_context == false) goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\nLAB_00018028:\n              *(dir_list **)(poVar36 + -2) = local_228;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18036;\n              iVar17 = close((int)poVar36[-2]);\n              if (iVar17 < 0) {\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1964e;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19663;\n                uVar19 = dcgettext();\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1966a;\n                piVar21 = __errno_location();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)((int)poVar36 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(_Bool **)(poVar36 + -2) = local_208;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18056;\n            iVar17 = close((int)poVar36[-2]);\n            if (iVar17 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e7e;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e93;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e9a;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(poVar36 + -2) = local_220;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1806f;\n            free(*(void **)(poVar36 + -2));\n            local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n            if (bVar14 == 0) goto LAB_00016fad;\n          }\n          else {\n            bVar14 = 0;\n            if (local_238 == (stat64 *)0x1000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)0x0;\n              dst_back_sb.st_dev._4_4_ = 0;\n              uVar16 = ~local_23c & local_204;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              *(uint *)(poVar36 + -1) = uVar16;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18dbe;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(uint *)((int)poVar36 + -0xc) = uVar16 & 0xffffefff;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18de5;\n                iVar17 = mkfifo(*(char **)(poVar36 + -2),*(__mode_t *)((int)poVar36 + -0xc));\n                local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)(poVar36 + -1) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18e07;\n                  pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  poVar41 = poVar36 + -1;\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  pcVar18 = "cannot create fifo %s";\n                  goto LAB_00016f90;\n                }\n              }\n            }\n            else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)src_sb.st_rdev;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              dst_back_sb.st_dev._4_4_ = src_sb.st_rdev._4_4_;\n              *(uint *)(poVar36 + -1) = ~local_23c & local_204;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x16f59;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16f7c;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot create special file %s";\n                goto LAB_00016f90;\n              }\n            }\n            else {\n              if (local_238 != (stat64 *)0xa000) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18e30;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "%s has unknown file type";\n                goto LAB_00016e8b;\n              }\n              *(undefined4 *)((int)poVar36 + -0xc) = (undefined4)src_sb.st_size;\n              *(char **)(poVar36 + -2) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a38;\n              pcVar18 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                            *(size_t *)((int)poVar36 + -0xc));\n              if (pcVar18 == (char *)0x0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x194d0;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot read symbolic link %s";\n                goto LAB_00016f90;\n              }\n              *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n              *(char **)(poVar36 + -2) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a5e;\n              iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                       *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n              if (iVar17 < 0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x19315;\n                piVar21 = __errno_location();\n                local_208 = (_Bool *)*piVar21;\n                if ((_Bool *)*piVar21 == (_Bool *)0x0) goto LAB_00018a69;\n                if (((local_1f0->update != true) || ((byte)local_1f4 != '\0')) ||\n                   ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                  *(char **)(poVar36 + -2) = pcVar18;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19347;\n                  free(*(void **)(poVar36 + -2));\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19356;\n                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s";\n                  *(undefined4 *)(poVar36 + -2) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1936b;\n                  uVar19 = dcgettext();\n                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                  *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_0001937a;\n                  error();\n                }\n                uVar16 = 0xffffffff;\n                pcVar22 = pcVar18;\n                do {\n                  if (uVar16 == 0) break;\n                  uVar16 = uVar16 - 1;\n                  cVar13 = *pcVar22;\n                  pcVar22 = pcVar22 + (uint)bVar49 * -2 + 1;\n                } while (cVar13 != '\0');\n                iVar17 = ~uVar16 - 1;\n                if ((dst_sb.st_size._4_4_ != 0) || ((int)dst_sb.st_size != iVar17))\n                goto LAB_0001933e;\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(int *)((int)poVar36 + -0xc) = (int)dst_sb.st_size;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e2b;\n                pcVar22 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                              *(size_t *)((int)poVar36 + -0xc));\n                if (pcVar22 == (char *)0x0) goto LAB_0001933e;\n                *(char **)((int)poVar36 + -4) = pcVar22;\n                *(char **)(poVar36 + -1) = pcVar22;\n                *(char **)((int)poVar36 + -0xc) = pcVar18;\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e41;\n                iVar17 = strcmp(*(char **)(poVar36 + -2),*(char **)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(char **)(poVar36 + -2) = pcVar22;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a12b;\n                  free(*(void **)(poVar36 + -2));\n                  goto LAB_0001933e;\n                }\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e55;\n                free(*(void **)(poVar36 + -2));\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e5d;\n                free(*(void **)(poVar36 + -2));\n              }\n              else {\nLAB_00018a69:\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18a72;\n                free(*(void **)(poVar36 + -2));\n              }\n              if (local_1f0->preserve_security_context != false) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x193dc;\n                restore_default_fscreatecon_or_die();\n              }\n              local_208 = (_Bool *)CONCAT31(local_208._1_3_,1);\n              _Var12 = local_1f0->preserve_ownership;\n              bVar14 = _Var12;\n              if (_Var12 != false) {\n                *(__gid_t *)(poVar36 + -1) = src_sb.st_gid;\n                *(__uid_t *)((int)poVar36 + -0xc) = src_sb.st_uid;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18aba;\n                iVar17 = lchown(*(char **)(poVar36 + -2),*(__uid_t *)((int)poVar36 + -0xc),\n                                *(__gid_t *)(poVar36 + -1));\n                if (iVar17 == 0) {\n                  bVar14 = 0;\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                }\n                else {\n                  *(cp_options **)(poVar36 + -2) = local_1f0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18ad3;\n                  _Var12 = chown_failure_ok(*(cp_options **)(poVar36 + -2));\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                  if (!_Var12) {\n                    *(char **)((int)poVar36 + -4) = pcVar18;\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    *(char **)((int)poVar36 + -0xc) = "failed to preserve ownership for %s";\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19574;\n                    uVar19 = dcgettext();\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x1957b;\n                    piVar21 = __errno_location();\n                    *(char **)((int)poVar36 + -0x14) = local_1f8;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_0001958b;\n                    error();\n                  }\n                  bVar14 = 0;\n                }\n              }\n            }\n          }\nLAB_000166da:\n          bVar49 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->copy_as_regular);\n            _Var12 = (_Bool)((local_1f0->copy_as_regular ^ 1U) & bVar49);\n            if (_Var12 != false) {\n              _Var4 = local_1f0->preserve_security_context;\n              if ((local_1f0->set_security_context != false) || (bVar49 = _Var12, _Var4 != false)) {\n                *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(uint *)((int)poVar36 + -0xc) = (uint)_Var4;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x177d2;\n                bVar49 = set_file_security_ctx\n                                   (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                    SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n                if (!(bool)bVar49) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->require_preserve_context);\n                  bVar49 = _Var12;\n                  if (local_1f0->require_preserve_context != false) goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          bVar32 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((local_1f0->hard_link != false) && (bVar49 != 0)) || (bVar14 != 0))\n          goto LAB_0001614a;\n        }\n        if (local_1f0->preserve_timestamps == false) {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (local_1f0->preserve_xattr == false) goto LAB_0001614a;\n          *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n          pcVar22 = local_1f8;\n          pcVar18 = local_200;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x17511;\n          _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                             *(cp_options **)((int)poVar36 + -0xc));\n          if (_Var12) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve_xattr;\n        }\n        else {\n          timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n          timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n          timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n          timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n          if ((char)local_208 != '\0') {\n            *(timespec **)((int)poVar36 + -0xc) = timespec;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16805;\n            iVar17 = lutimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n            if (iVar17 != 0) {\n              *(undefined4 *)((int)poVar36 + -4) = 0x16811;\n              piVar21 = __errno_location();\n              if (*piVar21 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(timespec **)((int)poVar36 + -0xc) = timespec;\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18652;\n          iVar17 = utimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\nLAB_00016816:\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x10) = 4;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16826;\n            pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                     *(char **)((int)poVar36 + -0xc));\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16846;\n            piVar21 = __errno_location();\n            uVar16 = local_1fc;\n            *(char **)((int)poVar36 + -0x14) = pcVar18;\n            *(uint *)((int)poVar36 + -0x18) = uVar16;\n            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n            *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)((int)poVar36 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          pcVar18 = local_1f8;\n          if ((local_1f0->preserve_ownership != false) &&\n             ((((byte)local_1f4 != '\0' || (src_sb.st_uid != dst_sb.st_uid)) ||\n              (src_sb.st_gid != dst_sb.st_gid)))) {\n            *(stat **)((int)poVar36 + -8) = &dst_sb;\n            *(uint *)((int)poVar36 + -0xc) = (uint)local_1f4 & 0xff;\n            *(stat **)((int)poVar36 + -0x10) = &src_sb;\n            pcVar31 = local_1f0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x168d3;\n            iVar17 = set_owner(pcVar31,pcVar18,-1,*(stat **)((int)poVar36 + -0x10),\n                               *(_Bool *)((int)poVar36 + -0xc),*(stat **)((int)poVar36 + -8));\n            if (iVar17 == -1) goto LAB_00016148;\n            if (iVar17 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (local_1f0->preserve_xattr != false) {\n            *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18c76;\n            _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                               *(cp_options **)((int)poVar36 + -0xc));\n            if ((!_Var12) && (local_1f0->require_preserve_xattr != false)) goto LAB_00016148;\n          }\n          if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n            if (local_1f0->set_mode == false) {\n              if ((local_1f0->explicit_no_preserve_mode & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)((int)poVar36 + -4) = 0x191ba;\n                  mVar30 = cached_umask();\n                  local_23c = local_23c & ~mVar30;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(mode_t *)((int)poVar36 + -4) = ~mVar30;\n                      *(stat **)((int)poVar36 + -8) = &dst_sb;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)((int)poVar36 + -0x10) = 3;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19977;\n                      iVar17 = __lxstat64(*(int *)((int)poVar36 + -0x10),\n                                          *(char **)((int)poVar36 + -0xc),\n                                          *(stat64 **)((int)poVar36 + -8));\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)((int)poVar36 + -8) = iVar17;\n                        puVar37 = (undefined4 *)((int)poVar36 + -0xc);\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = dst_sb.st_mode;\n                    if ((local_23c & ~dst_sb.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)((int)poVar36 + -0xc) = local_270 | local_23c;\n                *(char **)((int)poVar36 + -0x10) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16976;\n                iVar17 = chmod(*(char **)((int)poVar36 + -0x10),*(__mode_t *)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)((int)poVar36 + -8) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x16990;\n                  pcVar22 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)((int)poVar36 + -8) = 5;\n                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169b0;\n                  piVar21 = __errno_location();\n                  pcVar18 = local_1f4;\n                  *(char **)((int)poVar36 + -0x14) = pcVar22;\n                  *(char **)((int)poVar36 + -0x18) = pcVar18;\n                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                  *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar16 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar16 = 0x1ff;\n              }\n              *(undefined4 *)((int)poVar36 + -4) = 0x191a8;\n              mVar30 = cached_umask();\n              *(mode_t *)((int)poVar36 + -8) = ~mVar30 & uVar16;\n            }\n            else {\n              *(mode_t *)((int)poVar36 + -8) = local_1f0->mode;\n            }\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffffff;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18ece;\n            iVar17 = set_acl(*(char **)((int)poVar36 + -0x10),*(int *)((int)poVar36 + -0xc),\n                             *(mode_t *)((int)poVar36 + -8));\n            if (iVar17 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)((int)poVar36 + -0x10) = local_204;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x18) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x20) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x183b6;\n          iVar17 = copy_acl(*(char **)((int)poVar36 + -0x20),*(int *)((int)poVar36 + -0x1c),\n                            *(char **)((int)poVar36 + -0x18),*(int *)((int)poVar36 + -0x14),\n                            *(mode_t *)((int)poVar36 + -0x10));\n          if (iVar17 == 0) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve;\n        }\n        if (cVar13 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  bVar32 = 0;\nLAB_0001614a:\n  if (iVar2 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return (_Bool)bVar32;\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)((int)poVar36 + -4) = 0x19855;\n  __stack_chk_fail_local();\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "copy_internal(char *src_name,char *dst_name,_Bool new_dst,stat *parent,dir_list *ancestors,\n             cp_options *x,_Bool command_line_arg,_Bool *first_dir_created_per_command_line_arg,\n             _Bool *copy_into_self,_Bool *rename_succeeded)" identifier (parameter_list "(char *src_name,char *dst_name,_Bool new_dst,stat *parent,dir_list *ancestors,\n             cp_options *x,_Bool command_line_arg,_Bool *first_dir_created_per_command_line_arg,\n             _Bool *copy_into_self,_Bool *rename_succeeded)" ( (parameter_declaration "char *src_name" primitive_type (pointer_declarator "*src_name" * identifier)) , (parameter_declaration "char *dst_name" primitive_type (pointer_declarator "*dst_name" * identifier)) , (parameter_declaration "_Bool new_dst" type_identifier identifier) , (parameter_declaration "stat *parent" type_identifier (pointer_declarator "*parent" * identifier)) , (parameter_declaration "dir_list *ancestors" type_identifier (pointer_declarator "*ancestors" * identifier)) , (parameter_declaration "cp_options *x" type_identifier (pointer_declarator "*x" * identifier)) , (parameter_declaration "_Bool command_line_arg" type_identifier identifier) , (parameter_declaration "_Bool *first_dir_created_per_command_line_arg" type_identifier (pointer_declarator "*first_dir_created_per_command_line_arg" * identifier)) , (parameter_declaration "_Bool *copy_into_self" type_identifier (pointer_declarator "*copy_into_self" * identifier)) , (parameter_declaration "_Bool *rename_succeeded" type_identifier (pointer_declarator "*rename_succeeded" * identifier)) ))) (compound_statement "{\n  undefined4 *puVar1;\n  int iVar2;\n  code cVar3;\n  _Bool _Var4;\n  Interactive IVar5;\n  bool bVar6;\n  _Bool *p_Var7;\n  code *pcVar8;\n  _Bool *p_Var9;\n  cp_options *pcVar10;\n  __mode_t _Var11;\n  _Bool _Var12;\n  char cVar13;\n  byte bVar14;\n  int iVar15;\n  uint uVar16;\n  int iVar17;\n  char *pcVar18;\n  undefined4 uVar19;\n  stat *psVar20;\n  int *piVar21;\n  char *pcVar22;\n  Hash_table *pHVar23;\n  size_t sVar24;\n  Hash_table *pHVar25;\n  uint uVar26;\n  __blksize_t _Var27;\n  code *pcVar28;\n  undefined3 extraout_var;\n  dir_list *pdVar29;\n  mode_t mVar30;\n  undefined3 extraout_var_00;\n  cp_options *pcVar31;\n  undefined3 extraout_var_01;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar32;\n  stat64 *psVar33;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar34;\n  undefined4 extraout_EDX_01;\n  undefined **ppuVar35;\n  off_t *poVar36;\n  undefined4 *puVar37;\n  undefined4 *puVar38;\n  undefined1 *puVar39;\n  undefined1 *puVar40;\n  off_t *poVar41;\n  off_t *poVar42;\n  byte *pbVar43;\n  backup_type bVar44;\n  backup_type bVar45;\n  stat *psVar46;\n  int in_GS_OFFSET;\n  undefined1 uVar47;\n  undefined1 uVar48;\n  byte bVar49;\n  bool bVar50;\n  __off64_t _Var51;\n  undefined3 in_stack_00000011;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  _Bool *local_27c;\n  uint local_278;\n  Sparse_type local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  uint local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  Hash_table *local_230;\n  stat *local_22c;\n  dir_list *local_228;\n  __mode_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  stat *local_214;\n  __mode_t local_210;\n  stat *local_20c;\n  _Bool *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  cp_options *local_1f0;\n  _Bool read_hole;\n  _Bool wrote_hole_at_eof;\n  int local_1d8;\n  _Bool local_copy_into_self;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  __uid_t local_1bc;\n  stat src_sb;\n  stat dst_sb;\n  stat tmp_dst_sb;\n  stat dst_back_sb;\n  timespec timespec [2];\n  \n  bVar49 = 0;\n  ppuVar35 = &_GLOBAL_OFFSET_TABLE_;\n  local_200 = src_name;\n  local_1f8 = dst_name;\n  local_22c = parent;\n  local_220 = (code *)copy_into_self;\n  local_21c = (code *)first_dir_created_per_command_line_arg;\n  local_228 = ancestors;\n  local_208 = rename_succeeded;\n  local_1f0 = x;\n  local_1fc = _command_line_arg;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,new_dst);\n  local_224 = CONCAT31(local_224._1_3_,command_line_arg);\n  iVar2 = *(int *)(in_GS_OFFSET + 0x14);\n  *copy_into_self = false;\n  iVar17 = x->rename_errno;\n  if (x->move_mode != false) {\n    if (-1 < iVar17) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);\n    iVar17 = renameatu(-100,src_name,-100,dst_name,1);\n    if (iVar17 != 0) {\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\nLAB_000161c0:\n    if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar17 = 0;\n    pcVar18 = local_1f8;\n    if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;\nLAB_00015eb2:\n    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 == 0) goto LAB_00015ed4;\nLAB_0001620a:\n    puVar37 = (undefined4 *)&stack0xfffffd68;\nLAB_0001620e:\n    puVar37[-1] = 4;\n    puVar37[-2] = 0x16215;\n    pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);\n    puVar38 = puVar37 + 1;\n    puVar37[1] = 5;\n    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);\nLAB_00016222:\n    *(undefined ***)((int)puVar38 + -4) = ppuVar35;\n    *(undefined4 *)((int)puVar38 + -8) = 0;\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;\n    uVar19 = dcgettext();\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x16231;\n    piVar21 = __errno_location();\n    *(char **)((int)puVar38 + -0xc) = pcVar18;\n    *(undefined4 *)((int)puVar38 + -0x10) = uVar19;\n    *(int *)((int)puVar38 + -0x14) = *piVar21;\n    *(undefined4 *)((int)puVar38 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar17 == 0) goto LAB_000161c0;\n  if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n    pcVar18 = local_200;\n    if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;\nLAB_000161e8:\n    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 != 0) goto LAB_0001620a;\nLAB_00015ed4:\n    local_204 = src_sb.st_mode;\n    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }\n  }\nLAB_00015ef0:\n  puVar40 = auStack_28c;\n  poVar36 = (off_t *)auStack_28c;\n  puVar39 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)) {\n    local_20c = &src_sb;\n    if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }\n    record_file(pHVar23,local_200,local_20c);\n  }\n  local_20c = (stat *)0x1;\n  if (local_1f0->dereference != DEREF_ALWAYS) {\n    local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n    local_214 = (stat *)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    uVar16 = 0;\n    if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }\n    iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);\n    if (iVar17 < 0) {\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\n    pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));\n    puVar39 = auStack_28c;\n    if ((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;\n    poVar36 = (off_t *)auStack_28c;\n    if (local_1f0->preserve_security_context != false) {\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (stat *)((uint)local_214._1_3_ << 8);\n  local_230 = (Hash_table *)0x0;\nLAB_00016259:\n  puVar40 = puVar39;\n  if (((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0)) {\nLAB_00016338:\n    poVar36 = (off_t *)puVar40;\n    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }\n    if (iVar17 == 0) {\n      if (local_1f0->move_mode != false) goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar16 = src_sb.st_ino._4_4_;\n    pcVar18 = (char *)src_sb.st_ino;\n    if ((local_1f0->recursive != false) && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (stat *)src_sb.st_dev;\n      local_210 = src_sb.st_dev._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -8) = local_214;\n        *(uint *)((int)poVar36 + -0xc) = uVar16;\n        *(char **)((int)poVar36 + -0x10) = pcVar18;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163c0;\n        local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                               *(dev_t *)((int)poVar36 + -8));\n      }\n      else {\n        *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -0x14) = local_214;\n        *(uint *)((int)poVar36 + -0x18) = uVar16;\n        *(char **)((int)poVar36 + -0x1c) = pcVar18;\n        *(char **)((int)poVar36 + -0x20) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x176f4;\n        local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                            *(ino_t *)((int)poVar36 + -0x1c),\n                                            *(dev_t *)((int)poVar36 + -0x14));\n      }\n      if (local_214 != (stat *)0x0) {\nLAB_000163d3:\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163e7;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b02;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b16;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b2b;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x16406;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -0xc) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0x10) = 4;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18eee;\n          pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                   *(char **)((int)poVar36 + -0xc));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18f03;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0->dereference != DEREF_ALWAYS) &&\n           ((local_1f0->dereference != DEREF_COMMAND_LINE_ARGUMENTS || ((byte)local_1fc == '\0'))))\n        {\n          *(stat **)((int)poVar36 + -8) = local_214;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d3f;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d53;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d68;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar13 = local_1f0->move_mode;\nLAB_00016afb:\n      if (cVar13 == '\0') {\nLAB_00016b03:\n        local_208 = (_Bool *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar17 == 0x11) {\n          *(char **)((int)poVar36 + -0xc) = local_1f8;\n          *(char **)((int)poVar36 + -0x10) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x174bc;\n          iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x174cc;\n            piVar21 = __errno_location();\n            iVar17 = *piVar21;\n            if (iVar17 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (local_1f0->verbose != false) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "renamed ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18223;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1822d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18244;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n          }\n          if (local_1f0->set_security_context != false) {\n            *(cp_options **)((int)poVar36 + -4) = local_1f0;\n            *(undefined4 *)((int)poVar36 + -8) = 1;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18208;\n            set_file_security_ctx\n                      (*(char **)((int)poVar36 + -0x10),*(_Bool *)((int)poVar36 + -0xc),\n                       *(_Bool *)((int)poVar36 + -8),*(cp_options **)((int)poVar36 + -4));\n          }\n          if (local_208 != (_Bool *)0x0) {\n            *local_208 = true;\n          }\n          puVar39 = (undefined1 *)poVar36;\n          if (((byte)local_1fc != '\0') && (local_1f0->last_file == false)) {\n            *(stat **)((int)poVar36 + -8) = &src_sb;\n            pcVar31 = local_1f0;\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(Hash_table **)((int)poVar36 + -0x10) = pcVar31->dest_info;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17ab6;\n            record_file(*(Hash_table **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc),\n                        *(stat **)((int)poVar36 + -8));\n            bVar32 = (byte)local_1fc;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar17 == 0x16) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185ca;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185de;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185f3;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar17 != 0x12) {\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180a2;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_200;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          local_1f0 = (cp_options *)pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180ba;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180cf;\n          uVar19 = dcgettext();\n          *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(int *)((int)poVar36 + -0x1c) = iVar17;\n          goto LAB_00017594;\n        }\n        uVar16 = local_204 & 0xf000;\n        if (uVar16 == 0x4000) {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x1825e;\n          iVar17 = rmdir(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1826e;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x164d6;\n          iVar17 = unlink(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1753d;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) {\nLAB_00017548:\n              *(char **)((int)poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1755a;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(char **)((int)poVar36 + -8) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              local_1f0 = (cp_options *)pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17572;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(undefined4 *)((int)poVar36 + -8) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17587;\n              uVar19 = dcgettext();\n              *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\nLAB_00017594:\n              *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar32 = uVar16 != 0x4000 & local_1f0->verbose;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n          if (bVar32 != 0) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "copied ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a23;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a2d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a44;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n            local_208 = (_Bool *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (_Bool *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar13 = local_1f0->move_mode;\n    if ((_Bool)cVar13 == false) {\n      if (local_1f0->preserve_links == false) goto LAB_000165a0;\n      if (local_1f0->hard_link == false) goto LAB_00016ac0;\n      local_214 = (stat *)0x0;\n      goto LAB_00016b03;\n    }\n    if (src_sb.st_nlink != 1) {\n      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {\nLAB_00016ac0:\n        if ((1 < src_sb.st_nlink) ||\n           ((((byte)local_1fc != '\0' && (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS))\n            || (local_214 = (stat *)0x0, local_1f0->dereference == DEREF_ALWAYS)))) {\n          *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n          *(stat **)((int)poVar36 + -0x14) = (stat *)src_sb.st_dev;\n          *(uint *)((int)poVar36 + -0x18) = src_sb.st_ino._4_4_;\n          *(char **)((int)poVar36 + -0x1c) = (char *)src_sb.st_ino;\n          *(char **)((int)poVar36 + -0x20) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x1772e;\n          local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                              *(ino_t *)((int)poVar36 + -0x1c),\n                                              *(dev_t *)((int)poVar36 + -0x14));\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (stat *)0x0;\n      goto LAB_00016495;\n    }\n    *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n    *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n    *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n    *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x1834d;\n    local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                           *(dev_t *)((int)poVar36 + -8));\nLAB_00017737:\n    pcVar31 = local_1f0;\n    if (local_214 == (stat *)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(stat **)((int)poVar36 + -0xc) = local_20c;\n    pcVar18 = local_1f8;\n    *(uint *)((int)poVar36 + -0x10) = (uint)pcVar31->verbose;\n    psVar20 = local_214;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x17785;\n    _Var12 = create_hard_link((char *)psVar20,pcVar18,true,*(_Bool *)((int)poVar36 + -0x10),\n                              *(_Bool *)((int)poVar36 + -0xc));\n    puVar39 = (undefined1 *)poVar36;\n    if (_Var12) goto LAB_00016570;\n    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;\nLAB_00016fcb:\n    pHVar23 = local_230;\n    if (local_230 != (Hash_table *)0x0) {\n      *(char **)((int)poVar36 + -0xc) = local_1f8;\n      *(Hash_table **)((int)poVar36 + -0x10) = pHVar23;\n      *(undefined4 *)((int)poVar36 + -0x14) = 0x16fe8;\n      iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n      if (iVar17 != 0) {\n        *(char **)((int)poVar36 + -0xc) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x10) = 4;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x182f0;\n        pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                 *(char **)((int)poVar36 + -0xc));\n        puVar38 = (undefined4 *)((int)poVar36 + -8);\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        ppuVar35 = ppuVar35 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (local_1f0->verbose != false) {\n        *(char **)((int)poVar36 + -8) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 1;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17015;\n        pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(Hash_table **)((int)poVar36 + -8) = local_230;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17029;\n        pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        *(undefined ***)((int)poVar36 + -0xc) = ppuVar35 + -0x2bde;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x1703e;\n        uVar19 = dcgettext();\n        *(char **)((int)poVar36 + -0x14) = pcVar18;\n        *(char **)((int)poVar36 + -0x18) = pcVar22;\n        *(undefined4 *)((int)poVar36 + -0x1c) = uVar19;\n        *(undefined4 *)((int)poVar36 + -0x20) = 1;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if (local_1f0->move_mode != false) goto LAB_00016338;\n    if (local_1f0->backup_type == no_backups) {\n      psVar20 = &dst_sb;\n      if ((char)local_214 == '\0') {\n        *(stat **)(puVar40 + -8) = &dst_back_sb;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar40 + -0x10) = 3;\n        local_214 = &dst_back_sb;\n        *(undefined4 *)(puVar40 + -0x14) = 0x17a7d;\n        iVar15 = __lxstat64(*(int *)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                            *(stat64 **)(puVar40 + -8));\n        psVar20 = local_214;\n        if (iVar15 != 0) goto LAB_00016338;\n      }\n      pcVar31 = local_1f0;\n      if ((psVar20->st_mode & 0xf000) == 0xa000) {\n        *(stat **)(puVar40 + -8) = psVar20;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(Hash_table **)(puVar40 + -0x10) = pcVar31->dest_info;\n        *(undefined4 *)(puVar40 + -0x14) = 0x162d3;\n        _Var12 = seen_file(*(Hash_table **)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                           *(stat **)(puVar40 + -8));\n        if (_Var12) {\n          *(char **)(puVar40 + -8) = local_1f8;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 1;\n          *(undefined4 *)(puVar40 + -0x14) = 0x162ec;\n          pcVar18 = quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                     *(char **)(puVar40 + -8));\n          *(char **)(puVar40 + -8) = local_200;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16300;\n          local_1f0 = (cp_options *)\n                      quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                       *(char **)(puVar40 + -8));\n          *(undefined4 *)(puVar40 + -8) = 5;\n          *(char **)(puVar40 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16319;\n          uVar19 = dcgettext();\n          pcVar31 = local_1f0;\n          *(char **)(puVar40 + -0x10) = pcVar18;\n          *(cp_options **)(puVar40 + -0x14) = pcVar31;\n          *(undefined4 *)(puVar40 + -0x18) = uVar19;\n          *(undefined4 *)(puVar40 + -0x1c) = 0;\n          *(undefined4 *)(puVar40 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar40 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    poVar36 = (off_t *)puVar40;\n    if (local_1f0->verbose != false) goto LAB_00016b18;\n    if (iVar17 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_214 = (stat *)0x0;\n    local_208 = (_Bool *)((uint)local_1f4 & 0xff);\nLAB_000165b7:\n    local_234 = (stat64 *)(local_204 & 0xfff);\n    if (local_1f0->set_mode != false) {\n      local_234 = (stat64 *)(local_1f0->mode & 0xfff);\n    }\n    if (local_1f0->preserve_ownership == false) {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16dee;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        if (_Var12) {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16a82;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        local_23c = 0;\n        if (_Var12) goto LAB_0001664e;\n      }\n    }\n    else {\n      *(cp_options **)(poVar36 + -2) = local_1f0;\n      *(_Bool **)((int)poVar36 + -0x14) = local_208;\n      *(uint *)(poVar36 + -3) = local_204;\n      *(char **)((int)poVar36 + -0x1c) = local_1f8;\n      *(char **)(poVar36 + -4) = local_200;\n      *(undefined4 *)((int)poVar36 + -0x24) = 0x16618;\n      _Var12 = set_process_security_ctx\n                         (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                          *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                          *(cp_options **)(poVar36 + -2));\n      if (_Var12) {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          pcVar31 = local_1f0;\n          if (local_228 == (dir_list *)0x0) {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n          }\n          else {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n            pdVar29 = local_228;\n            do {\n              if ((*(uint *)((int)&pdVar29->ino + 4) == src_sb.st_ino._4_4_ &&\n                   *(char **)&pdVar29->ino == (char *)src_sb.st_ino) &&\n                 (src_sb.st_dev._4_4_ == *(__mode_t *)((int)&pdVar29->dev + 4) &&\n                  (stat *)src_sb.st_dev == *(stat **)&pdVar29->dev)) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16e7e;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              pdVar29 = pdVar29->parent;\n            } while (pdVar29 != (dir_list *)0x0);\n          }\n          local_20c = (stat *)src_sb.st_dev;\n          local_224 = src_sb.st_dev._4_4_;\n          local_238 = (stat64 *)((int)poVar36 - 0x11U & 0xfffffff0);\n          local_238->__pad1 = src_sb.st_ino._4_4_;\n          local_238->__st_ino = (__ino_t)(stat *)src_sb.st_dev;\n          *(dir_list **)&local_238->st_dev = local_228;\n          *(char **)((int)&local_238->st_dev + 4) = (char *)src_sb.st_ino;\n          local_238->st_mode = src_sb.st_dev._4_4_;\n          if (((byte)local_1f4 == '\0') && ((dst_sb.st_mode & 0xf000) == 0x4000)) {\n            if (local_1f0->set_security_context == false) {\n              bVar32 = local_1f0->preserve_security_context;\n              if ((_Bool)bVar32 != false) goto LAB_0001889e;\n            }\n            else {\n              bVar32 = local_1f0->preserve_security_context;\nLAB_0001889e:\n              *(cp_options **)((int)poVar36 + -0x24) = local_1f0;\n              *(undefined4 *)(poVar36 + -5) = 0;\n              *(uint *)((int)poVar36 + -0x2c) = (uint)bVar32;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x188b3;\n              _Var12 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -6),*(_Bool *)((int)poVar36 + -0x2c),\n                                  SUB81(poVar36[-5],0),*(cp_options **)((int)poVar36 + -0x24));\n              if ((!_Var12) && (poVar42 = poVar36 + -4, pcVar31->require_preserve_context != false))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)((int)poVar36 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(poVar36 + -6) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17154;\n            iVar17 = mkdir(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 100000;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)((int)poVar41 + -4) = pcVar18;\n              *(undefined4 *)((int)poVar41 + -8) = 0;\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f98;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f9f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar41 + -0xc) = pcVar22;\n              *(undefined4 *)((int)poVar41 + -0x10) = uVar19;\n              *(int *)((int)poVar41 + -0x14) = *piVar21;\n              *(undefined4 *)((int)poVar41 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar41 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat **)(poVar36 + -5) = &dst_sb;\n            *(char **)((int)poVar36 + -0x2c) = local_1f8;\n            *(undefined4 *)(poVar36 + -6) = 3;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17176;\n            iVar17 = __lxstat64((int)poVar36[-6],*(char **)((int)poVar36 + -0x2c),\n                                *(stat64 **)(poVar36 + -5));\n            _Var11 = dst_sb.st_mode;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x18ce1;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((dst_sb.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)((int)poVar36 + -0x2c) = dst_sb.st_mode | 0x1c0;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x171b2;\n              iVar17 = chmod(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n              local_270 = _Var11;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x19082;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                poVar41 = poVar36 + -5;\n                *(undefined4 *)(poVar36 + -5) = 5;\n                pcVar18 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__mode_t *)(poVar36 + -6) = dst_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -0x34) = (stat *)dst_sb.st_dev;\n              *(uint *)(poVar36 + -7) = dst_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x3c) = (char *)dst_sb.st_ino;\n              *(char **)(poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x44) = 0x18c19;\n              remember_copied(*(char **)(poVar36 + -8),*(ino_t *)((int)poVar36 + -0x3c),\n                              *(dev_t *)((int)poVar36 + -0x34));\n              *local_21c = (code)0x1;\n            }\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            if (local_1f0->verbose != false) {\n              if (local_1f0->move_mode == false) {\n                *(undefined4 *)((int)poVar36 + -0x24) = 0x18d28;\n                emit_verbose(pcVar18,pcVar22,(char *)0x0);\n              }\n              else {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x171ff;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                *(undefined4 *)(poVar36 + -5) = 5;\n                *(char **)((int)poVar36 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(poVar36 + -6) = 0;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17214;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -5) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x2c) = uVar19;\n                *(undefined4 *)(poVar36 + -6) = 1;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          poVar42 = poVar36 + -4;\n          bVar32 = local_22c != (stat *)0x0 & local_1f0->one_file_system;\n          if ((bVar32 == 0) ||\n             (*(__mode_t *)((int)&local_22c->st_dev + 4) == src_sb.st_dev._4_4_ &&\n              *(stat **)&local_22c->st_dev == (stat *)src_sb.st_dev)) {\n            local_240 = (stat64 *)&dst_back_sb;\n            pcVar31 = local_1f0;\n            psVar33 = (stat64 *)&dst_back_sb;\n            for (iVar17 = 0x11; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar33->st_dev = (char *)pcVar31->backup_type;\n              pcVar31 = (cp_options *)((int)pcVar31 + (uint)bVar49 * -8 + 4);\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n            }\n            *(undefined4 *)((int)poVar36 + -0x2c) = 2;\n            *(char **)(poVar36 + -6) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x1726d;\n            pHVar23 = (Hash_table *)\n                      savedir(*(char **)(poVar36 + -6),*(savedir_option *)((int)poVar36 + -0x2c));\n            local_230 = pHVar23;\n            if (pHVar23 == (Hash_table *)0x0) {\n              *(char **)((int)poVar36 + -0x2c) = local_200;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19153;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              *(undefined4 *)(poVar36 + -5) = 5;\n              *(char **)((int)poVar36 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(poVar36 + -6) = 0;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19168;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x1916f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x34) = pcVar18;\n              *(undefined4 *)(poVar36 + -7) = uVar19;\n              *(int *)((int)poVar36 + -0x3c) = *piVar21;\n              *(undefined4 *)(poVar36 + -8) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS) {\n              dst_back_sb.st_dev._4_4_ = 2;\n            }\n            if (*(char *)&pHVar23->bucket == '\0') {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              bVar32 = 1;\n            }\n            else {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              local_20c = &src_sb;\n              local_234 = (stat64 *)&tmp_dst_sb;\n              local_22c = (stat *)&local_copy_into_self;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_200;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1731f;\n                psVar20 = (stat *)file_name_concat(*(char **)(poVar36 + -6),\n                                                   *(char **)((int)poVar36 + -0x2c),\n                                                   *(char ***)(poVar36 + -5));\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_1f8;\n                local_214 = psVar20;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17336;\n                pcVar18 = file_name_concat(*(char **)(poVar36 + -6),*(char **)((int)poVar36 + -0x2c)\n                                           ,*(char ***)(poVar36 + -5));\n                p_Var7 = local_208;\n                cVar3 = *local_21c;\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(stat **)((int)poVar36 + -0x2c) = local_22c;\n                *(stat64 **)(poVar36 + -6) = local_234;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0;\n                *(stat64 **)(poVar36 + -7) = local_240;\n                *(stat64 **)((int)poVar36 + -0x3c) = local_238;\n                *(stat **)(poVar36 + -8) = local_20c;\n                psVar20 = local_214;\n                tmp_dst_sb.st_dev._0_1_ = cVar3;\n                *(undefined4 *)((int)poVar36 + -0x44) = 0x1737f;\n                _Var12 = copy_internal((char *)psVar20,pcVar18,SUB41(p_Var7,0),\n                                       *(stat **)(poVar36 + -8),*(dir_list **)((int)poVar36 + -0x3c)\n                                       ,*(cp_options **)(poVar36 + -7),\n                                       *(_Bool *)((int)poVar36 + -0x34),*(_Bool **)(poVar36 + -6),\n                                       *(_Bool **)((int)poVar36 + -0x2c),*(_Bool **)(poVar36 + -5));\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & _Var12);\n                *local_220 = (code)((byte)*local_220 | local_copy_into_self);\n                *(char **)(poVar36 + -6) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1739d;\n                free(*(void **)(poVar36 + -6));\n                *(stat **)(poVar36 + -6) = local_214;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x173a9;\n                free(*(void **)(poVar36 + -6));\n                if (local_copy_into_self != false) break;\n                local_228 = (dir_list *)\n                            CONCAT31(local_228._1_3_,\n                                     (byte)local_228._0_1_ | (byte)tmp_dst_sb.st_dev._0_1_);\n                *(Hash_table **)(poVar36 + -6) = pHVar23;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x172fe;\n                sVar24 = strlen(*(char **)(poVar36 + -6));\n                pHVar23 = (Hash_table *)((int)&pHVar23->bucket + sVar24 + 1);\n              } while (*(char *)&pHVar23->bucket != '\0');\n              bVar32 = (byte)local_224;\n            }\n            *(Hash_table **)(poVar36 + -6) = local_230;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x173ce;\n            free(*(void **)(poVar36 + -6));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar14 = 0;\n            local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n            bVar49 = false;\n            local_224 = CONCAT31(local_224._1_3_,bVar32);\nLAB_00016722:\n            if (local_1f0->dest_info != (Hash_table *)0x0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar49);\n              *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n              *(char **)((int)poVar42 + -0xc) = local_1f8;\n              *(undefined4 *)((int)poVar42 + -0x10) = 3;\n              *(undefined4 *)((int)poVar42 + -0x14) = 0x1674c;\n              iVar17 = __lxstat64(*(int *)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                                  *(stat64 **)((int)poVar42 + -8));\n              pcVar31 = local_1f0;\n              bVar49 = (byte)local_1fc;\n              if (iVar17 == 0) {\n                *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n                *(char **)((int)poVar42 + -0xc) = local_1f8;\n                *(Hash_table **)((int)poVar42 + -0x10) = pcVar31->dest_info;\n                *(undefined4 *)((int)poVar42 + -0x14) = 0x16772;\n                record_file(*(Hash_table **)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                            *(stat **)((int)poVar42 + -8));\n                bVar49 = (byte)local_1fc;\n              }\n            }\n            bVar32 = (byte)local_224;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            poVar36 = poVar42;\n            goto LAB_00016794;\n          }\n          local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          poVar36 = poVar36 + -4;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (_Bool *)CONCAT31(local_208._1_3_,local_1f0->symbolic_link);\n          poVar42 = poVar36;\n          if (local_1f0->symbolic_link != false) {\n            if (*local_200 != '/') {\n              uVar47 = poVar36 < (undefined1 *)0xc;\n              uVar48 = poVar36 == (off_t *)0xc;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1667f;\n              psVar20 = (stat *)dir_name(*(char **)(poVar36 + -2));\n              iVar17 = 2;\n              pbVar43 = &DAT_0002c142;\n              psVar46 = psVar20;\n              do {\n                if (iVar17 == 0) break;\n                iVar17 = iVar17 + -1;\n                bVar32 = (byte)psVar46->st_dev;\n                uVar47 = *pbVar43 < bVar32;\n                uVar48 = *pbVar43 == bVar32;\n                pbVar43 = pbVar43 + (uint)bVar49 * -2 + 1;\n                psVar46 = (stat *)((int)psVar46 + (uint)bVar49 * -2 + 1);\n              } while ((bool)uVar48);\n              if ((!(bool)uVar47 && !(bool)uVar48) != (bool)uVar47) {\n                local_20c = psVar20;\n                *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n                *(undefined1 **)((int)poVar36 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(poVar36 + -2) = 3;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x17ae0;\n                iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                   *(stat64 **)(poVar36 + -1));\n                psVar20 = local_20c;\n                if (iVar17 == 0) {\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(stat **)((int)poVar36 + -0xc) = psVar20;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x17b03;\n                  iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                     *(stat64 **)(poVar36 + -1));\n                  psVar20 = local_20c;\n                  if ((iVar17 == 0) &&\n                     (((tmp_dst_sb.st_ino._4_4_ != dst_back_sb.st_ino._4_4_ ||\n                        (char *)tmp_dst_sb.st_ino != (char *)dst_back_sb.st_ino ||\n                       (tmp_dst_sb.st_dev._4_4_ != dst_back_sb.st_dev._4_4_)) ||\n                      ((stat *)tmp_dst_sb.st_dev != (stat *)dst_back_sb.st_dev)))) {\n                    *(stat **)(poVar36 + -2) = local_20c;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b37;\n                    free(*(void **)(poVar36 + -2));\n                    *(char **)(poVar36 + -1) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b49;\n                    pcVar22 = quotearg_n_style_colon\n                                        ((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    pcVar18 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)((int)poVar36 + -0xc) = pcVar18;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x16e93;\n                    uVar19 = dcgettext();\n                    *(char **)((int)poVar36 + -0x14) = pcVar22;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(stat **)(poVar36 + -2) = psVar20;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x166ac;\n              free(*(void **)(poVar36 + -2));\n            }\n            *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n            *(char **)(poVar36 + -1) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x166cf;\n            iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                     *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n            bVar14 = 0;\n            if (iVar17 < 0) {\n              *(char **)(poVar36 + -1) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1898c;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              local_1f4 = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189a4;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189b9;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189c0;\n              piVar21 = __errno_location();\n              *(char **)(poVar36 + -2) = local_1f4;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (local_1f0->hard_link != false) {\n            _Var12 = local_1f0->unlink_dest_after_failed_open;\n            *(stat **)((int)poVar36 + -0xc) = local_20c;\n            pcVar22 = local_1f8;\n            bVar14 = 0;\n            *(undefined4 *)(poVar36 + -2) = 0;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18382;\n            _Var12 = create_hard_link(pcVar18,pcVar22,_Var12,SUB81(poVar36[-2],0),\n                                      *(_Bool *)((int)poVar36 + -0xc));\n            if (_Var12) goto LAB_000166da;\nLAB_00016fad:\n            poVar36 = poVar42;\n            if (local_1f0->preserve_security_context != false) {\nLAB_000177a0:\n              *(undefined4 *)((int)poVar36 + -4) = 0x177a5;\n              restore_default_fscreatecon_or_die();\n            }\n            if (local_214 == (stat *)0x0) {\n              *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n              *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18325;\n              forget_created(*(ino_t *)((int)poVar36 + -0x10),*(dev_t *)((int)poVar36 + -8));\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & local_1f0->copy_as_regular) != 0)) {\n            local_244 = src_sb.st_mode;\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->data_copy_required);\n            *(uint *)((int)poVar36 + -0xc) = (uint)(local_1f0->dereference == DEREF_NEVER) << 0x11;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17b97;\n            local_208 = (_Bool *)open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            if ((int)local_208 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18d03;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              poVar41 = poVar36 + -1;\n              *(undefined4 *)(poVar36 + -1) = 5;\n              pcVar18 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n            *(_Bool **)((int)poVar36 + -0xc) = local_208;\n            *(undefined4 *)(poVar36 + -2) = 3;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17bbf;\n            iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                *(stat64 **)(poVar36 + -1));\n            pcVar31 = local_1f0;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f4d;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f62;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f69;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              goto LAB_00018b73;\n            }\n            if ((src_sb.st_ino._4_4_ != tmp_dst_sb.st_ino._4_4_ ||\n                 (char *)src_sb.st_ino != (char *)tmp_dst_sb.st_ino) ||\n               (src_sb.st_dev._4_4_ != tmp_dst_sb.st_dev._4_4_ ||\n                (stat *)src_sb.st_dev != (stat *)tmp_dst_sb.st_dev)) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b5a;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "skipping file %s, as it was replaced while being copied";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b6f;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar28 = (code *)(~local_278 & local_284);\n              *(code **)(poVar36 + -1) = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xc1;\n              *(char **)(poVar36 + -2) = local_1f8;\n              local_21c = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190c8;\n              pdVar29 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n              local_228 = pdVar29;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar17 = *(int *)local_220;\n              bVar32 = iVar17 == 0x11 & (byte)((uint)pdVar29 >> 0x1f);\n              local_22c = (stat *)CONCAT31(local_22c._1_3_,bVar32);\n              if (bVar32 == 0) {\nLAB_00019445:\n                bVar32 = iVar17 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n                if (bVar32 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(poVar36 + -1) = (stat64 *)&dst_back_sb;\n                    *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                    *(undefined4 *)(poVar36 + -2) = 3;\n                    local_240 = (stat64 *)&dst_back_sb;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17c9e;\n                    iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                        *(stat64 **)(poVar36 + -1));\n                    if (iVar17 != 0) {\n                      *(int *)((int)poVar36 + -4) = iVar17;\n                      *(int *)(poVar36 + -1) = iVar17;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x198f9;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1990e;\n                      uVar19 = dcgettext();\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19915;\n                      piVar21 = __errno_location();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar19 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0->reflink_mode != REFLINK_NEVER) {\n                        *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                        *(_Bool **)(poVar36 + -1) = local_208;\n                        *(undefined4 *)((int)poVar36 + -0xc) = 0x40049409;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19d52;\n                        iVar17 = ioctl((int)poVar36[-2],*(ulong *)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_11;\n                        if (iVar17 == 0) goto LAB_000194e2;\n                        if (local_1f0->reflink_mode == REFLINK_ALWAYS) {\n                          *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                          *(char **)(poVar36 + -1) = local_200;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 1;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d7d;\n                          pcVar18 = quotearg_n_style((int)poVar36[-2],\n                                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                                     *(char **)(poVar36 + -1));\n                          *(char **)(poVar36 + -1) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d91;\n                          local_20c = (stat *)quotearg_n_style((int)poVar36[-2],\n                                                               *(quoting_style *)\n                                                                ((int)poVar36 + -0xc),\n                                                               *(char **)(poVar36 + -1));\n                          *(undefined4 *)(poVar36 + -1) = 5;\n                          *(char **)((int)poVar36 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19daa;\n                          uVar19 = dcgettext();\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19db1;\n                          piVar21 = __errno_location();\n                          psVar20 = local_20c;\n                          *(char **)(poVar36 + -2) = pcVar18;\n                          *(stat **)((int)poVar36 + -0x14) = psVar20;\n                          *(undefined4 *)(poVar36 + -3) = uVar19;\n                          *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                          *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)((int)poVar36 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)((int)poVar36 + -4) = 0x17ccd;\n                      uVar26 = getpagesize();\n                      uVar16 = dst_back_sb.st_blksize - 0x20000;\n                      local_25c = dst_back_sb.st_blksize;\n                      local_258 = (code *)dst_back_sb.st_blksize;\n                      if (0x1ffe0000 < uVar16) {\n                        local_258 = get_quoting_style;\n                        uVar16 = 0x200;\n                        if (dst_back_sb.st_blksize - 1U < 0x20000000) {\n                          uVar16 = dst_back_sb.st_blksize;\n                        }\n                        local_25c = uVar16;\n                      }\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(undefined4 *)((int)poVar36 + -0xc) = 2;\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0;\n                      *(undefined4 *)(poVar36 + -3) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(_Bool **)(poVar36 + -4) = local_208;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x17d28;\n                      fdadvise((int)poVar36[-4],*(off_t *)((int)poVar36 + -0x1c),\n                               *(off_t *)((int)poVar36 + -0x14),*(fadvice_t *)((int)poVar36 + -0xc))\n                      ;\n                      local_21c = (code *)(tmp_dst_sb.st_mode & 0xf000);\n                      bVar50 = false;\n                      if ((code *)(tmp_dst_sb.st_mode & 0xf000) == (code *)0x8000) {\n                        uVar16 = tmp_dst_sb.st_size._4_4_ >> 0x1f & 0x1ff;\n                        iVar17 = tmp_dst_sb.st_size._4_4_ +\n                                 (uint)CARRY4(uVar16,(uint)(code *)tmp_dst_sb.st_size);\n                        iVar15 = iVar17 >> 9;\n                        uVar16 = (uint)((uint)tmp_dst_sb.st_blocks <\n                                       ((uint)((code *)tmp_dst_sb.st_size + uVar16) >> 9 |\n                                       iVar17 * 0x800000));\n                        iVar17 = tmp_dst_sb.st_blocks._4_4_ - iVar15;\n                        bVar50 = (SBORROW4(tmp_dst_sb.st_blocks._4_4_,iVar15) !=\n                                 SBORROW4(iVar17,uVar16)) != (int)(iVar17 - uVar16) < 0;\n                      }\n                      local_220 = (code *)(uVar26 - 1);\n                      if ((dst_back_sb.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0->sparse_mode != SPARSE_ALWAYS) {\n                          if ((local_1f0->sparse_mode == SPARSE_AUTO) && (bVar50)) {\n                            *(code **)(poVar36 + -2) = local_258 + uVar26;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x199e0;\n                            local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                            local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                        -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19f62;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\nLAB_000199fc:\n                          local_274 = local_1f0->sparse_mode;\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\n                      else {\nLAB_00017d9d:\n                        local_220 = (code *)(0x7fffffff - uVar26);\n                        _Var27 = tmp_dst_sb.st_blksize;\n                        if (0x1ffe0000 < tmp_dst_sb.st_blksize - 0x20000U) {\n                          _Var27 = 0x20000;\n                        }\n                        *(undefined4 *)((int)poVar36 + -4) = 0x20000;\n                        *(code **)(poVar36 + -1) = (code *)(0x7fffffff - uVar26);\n                        *(code **)((int)poVar36 + -0xc) = local_258;\n                        *(__blksize_t *)(poVar36 + -2) = _Var27;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17dd4;\n                        pcVar28 = (code *)buffer_lcm(*(size_t *)(poVar36 + -2),\n                                                     *(size_t *)((int)poVar36 + -0xc),\n                                                     *(size_t *)(poVar36 + -1));\n                        if ((local_21c == (code *)0x8000) &&\n                           (tmp_dst_sb.st_size._4_4_ <\n                            (int)(uint)((code *)tmp_dst_sb.st_size < local_258))) {\n                          local_258 = (code *)tmp_dst_sb.st_size + 1;\n                        }\n                        local_21c = pcVar28 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar28);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar28;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17e2e;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\n                          local_285 = '\0';\n                          local_274 = SPARSE_NEVER;\nLAB_00019a18:\n                          pcVar28 = (code *)0x0;\n                          iVar17 = 0;\n                          local_21c = (code *)tmp_dst_sb.st_size;\n                          *(code **)((int)poVar36 + -4) = (code *)tmp_dst_sb.st_size;\n                          *(code **)(poVar36 + -1) = (code *)tmp_dst_sb.st_size;\n                          *(stat **)((int)poVar36 + -0xc) = (stat *)&local_copy_into_self;\n                          *(_Bool **)(poVar36 + -2) = local_208;\n                          local_218 = tmp_dst_sb.st_size._4_4_;\n                          local_22c = (stat *)&local_copy_into_self;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19a4e;\n                          extent_scan_init((int)poVar36[-2],*(extent_scan **)((int)poVar36 + -0xc));\n                          local_280 = &_GLOBAL_OFFSET_TABLE_;\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          do {\n                            *(stat **)(poVar36 + -2) = local_22c;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19a93;\n                            _Var12 = extent_scan_read(*(extent_scan **)(poVar36 + -2));\n                            ppuVar35 = local_280;\n                            if (!_Var12) {\n                              uVar19 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var_00,_Var12);\n                                  *(char **)(poVar36 + -1) = local_200;\n                                  *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1b5;\n                                  pcVar18 = quotearg_n_style_colon\n                                                      ((int)poVar36[-2],\n                                                       *(quoting_style *)((int)poVar36 + -0xc),\n                                                       *(char **)(poVar36 + -1));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  ppuVar35 = ppuVar35 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                uVar26 = 0;\n                                if (local_285 != '\0') {\n                                  uVar26 = local_25c;\n                                }\n                                uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                                local_25c = uVar26;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar28;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar17;\n                              do {\n                                puVar1 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar28 = (code *)*puVar1;\n                                iVar17 = puVar1[1];\n                                local_24c = puVar1[2];\n                                local_248 = puVar1[3];\n                                iVar34 = puVar1[3] + iVar17 + (uint)CARRY4(local_24c,(uint)pcVar28);\n                                iVar15 = local_218 - iVar34;\n                                if ((SBORROW4(local_218,iVar34) !=\n                                    SBORROW4(iVar15,(uint)(local_21c < pcVar28 + local_24c))) !=\n                                    (int)(iVar15 - (uint)(local_21c < pcVar28 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar17) !=\n                                      SBORROW4(local_218 - iVar17,(uint)(local_21c < pcVar28))) !=\n                                      (int)((local_218 - iVar17) - (uint)(local_21c < pcVar28)) < 0)\n                                  {\n                                    pcVar28 = local_21c;\n                                    iVar17 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar28;\n                                  local_248 = (local_218 - iVar17) - (uint)(local_21c < pcVar28);\n                                }\n                                local_254 = (code *)(((int)pcVar28 - (int)local_26c) - local_264);\n                                local_250 = (((iVar17 - local_268) - (uint)(pcVar28 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar28 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)((int)poVar36 + -4) = 0;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(code **)((int)poVar36 + -0xc) = pcVar28;\n                                  *(_Bool **)(poVar36 + -2) = local_208;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ca8;\n                                  _Var51 = lseek64((int)poVar36[-2],\n                                                   *(__off64_t *)((int)poVar36 + -0xc),\n                                                   *(int *)((int)poVar36 + -4));\n                                  pcVar18 = local_1f8;\n                                  pdVar29 = local_228;\n                                  if (_Var51 < 0) {\n                                    *(int *)((int)poVar36 + -4) = iVar17;\n                                    ppuVar35 = local_280;\n                                    *(int *)(poVar36 + -1) = iVar17;\n                                    *(char **)((int)poVar36 + -0xc) = local_200;\n                                    *(undefined4 *)(poVar36 + -2) = 4;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f22;\n                                    pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                             *(char **)((int)poVar36 + -0xc));\n                                    *(undefined4 *)(poVar36 + -1) = 5;\n                                    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                                    *(undefined4 *)(poVar36 + -2) = 0;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f37;\n                                    uVar19 = dcgettext();\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f3e;\n                                    piVar21 = __errno_location();\n                                    *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == SPARSE_NEVER) {\n                                    *(undefined4 *)((int)poVar36 + -4) = 0x19d2c;\n                                    _Var12 = write_zeros((int)pdVar29,*poVar36);\n                                    if (!_Var12) {\n                                      *(code **)((int)poVar36 + -4) = pcVar28;\n                                      ppuVar35 = local_280;\n                                      *(char **)(poVar36 + -1) = local_1f8;\n                                      *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                      *(undefined4 *)(poVar36 + -2) = 0;\n                                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a193;\n                                      pcVar18 = quotearg_n_style_colon\n                                                          ((int)poVar36[-2],\n                                                           *(quoting_style *)((int)poVar36 + -0xc),\n                                                           *(char **)(poVar36 + -1));\n                                      *(undefined4 *)(poVar36 + -1) = 5;\n                                      ppuVar35 = ppuVar35 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    uVar16 = 0;\n                                    goto LAB_00019af3;\n                                  }\n                                  bVar50 = local_274 == SPARSE_ALWAYS;\n                                  *(int *)((int)poVar36 + -0xc) = local_250;\n                                  *(code **)(poVar36 + -2) = local_254;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ce6;\n                                  _Var12 = create_hole((int)pdVar29,pcVar18,bVar50,poVar36[-2]);\n                                  local_20c = (stat *)CONCAT31(local_20c._1_3_,_Var12);\n                                  if (_Var12) goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar35 = local_280;\n                                  *(__uid_t *)(poVar36 + -2) = local_1bc;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19d0d;\n                                  free(*(void **)(poVar36 + -2));\n                                  bVar14 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                uVar16 = 0;\n                                if (local_274 == SPARSE_ALWAYS) {\n                                  uVar16 = local_25c;\n                                }\nLAB_00019af3:\n                                p_Var7 = local_27c;\n                                *(_Bool **)(poVar36 + -2) = &read_hole;\n                                *(_Bool **)((int)poVar36 + -0x14) = &wrote_hole_at_eof;\n                                pdVar29 = local_228;\n                                *(int *)(poVar36 + -3) = local_248;\n                                *(uint *)((int)poVar36 + -0x1c) = local_24c;\n                                *(char **)(poVar36 + -4) = local_1f8;\n                                *(char **)((int)poVar36 + -0x24) = local_200;\n                                *(undefined4 *)(poVar36 + -5) = 1;\n                                *(uint *)((int)poVar36 + -0x2c) = uVar16;\n                                p_Var9 = local_208;\n                                *(code **)(poVar36 + -6) = local_258;\n                                *(undefined4 *)((int)poVar36 + -0x34) = 0x19b3c;\n                                _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,\n                                                     *(size_t *)(poVar36 + -6),\n                                                     *(size_t *)((int)poVar36 + -0x2c),\n                                                     SUB81(poVar36[-5],0),\n                                                     *(char **)((int)poVar36 + -0x24),\n                                                     *(char **)(poVar36 + -4),\n                                                     *(uintmax_t *)((int)poVar36 + -0x1c),\n                                                     *(off_t **)((int)poVar36 + -0x14),\n                                                     *(_Bool **)(poVar36 + -2));\n                                if (!_Var12) goto LAB_00019cf7;\n                                local_250 = iVar17 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar28,_wrote_hole_at_eof);\n                                local_254 = pcVar28 + _wrote_hole_at_eof;\n                                uVar47 = (byte)local_20c;\n                                if (local_1d8 != 0 || _wrote_hole_at_eof != 0) {\n                                  uVar47 = read_hole;\n                                }\n                                local_20c = (stat *)CONCAT31(local_20c._1_3_,uVar47);\n                                if (local_250 == local_218 &&\n                                    pcVar28 + _wrote_hole_at_eof == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar28;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar17;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(__uid_t *)(poVar36 + -2) = local_1bc;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1969a;\n                            free(*(void **)(poVar36 + -2));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar19 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          pdVar29 = local_228;\n                          ppuVar35 = local_280;\n                          bVar50 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar50 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == SPARSE_NEVER) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a279;\n                            _Var12 = write_zeros((int)pdVar29,*poVar36);\n                            iVar17 = CONCAT31(extraout_var_01,_Var12);\n                            uVar19 = extraout_ECX_14;\n                            if (!_Var12) goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                            *(int *)(poVar36 + -1) = local_218;\n                            *(code **)((int)poVar36 + -0xc) = local_21c;\n                            *(dir_list **)(poVar36 + -2) = local_228;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1971b;\n                            iVar17 = ftruncate64((int)poVar36[-2],\n                                                 *(__off64_t *)((int)poVar36 + -0xc));\n                            pcVar8 = local_21c;\n                            pcVar28 = local_254;\n                            if (iVar17 != 0) goto LAB_00019fca;\n                            uVar19 = extraout_ECX_06;\n                            if ((local_274 == SPARSE_ALWAYS) && (bVar50)) {\n                              *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_00;\n                              iVar17 = local_250;\n                              *(undefined4 *)(poVar36 + -1) = extraout_EDX_00;\n                              *(uint *)((int)poVar36 + -0xc) =\n                                   (local_218 - iVar17) - (uint)(pcVar8 < pcVar28);\n                              *(int *)(poVar36 + -2) = (int)pcVar8 - (int)pcVar28;\n                              *(int *)((int)poVar36 + -0x14) = iVar17;\n                              *(code **)(poVar36 + -3) = pcVar28;\n                              *(undefined4 *)((int)poVar36 + -0x1c) = 3;\n                              *(dir_list **)(poVar36 + -4) = local_228;\n                              *(undefined4 *)((int)poVar36 + -0x24) = 0x1976c;\n                              iVar15 = fallocate64((int)poVar36[-4],*(int *)((int)poVar36 + -0x1c),\n                                                   poVar36[-3],poVar36[-2]);\n                              uVar19 = extraout_ECX_07;\n                              if (iVar15 < 0) {\n                                *(undefined4 *)((int)poVar36 + -4) = 0x1977c;\n                                piVar21 = __errno_location();\n                                uVar19 = extraout_ECX_08;\n                                if ((*piVar21 != 0x26) && (*piVar21 != 0x5f)) {\n                                  *(int *)((int)poVar36 + -4) = iVar17;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                  *(undefined4 *)(poVar36 + -2) = 4;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197a1;\n                                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                           *(char **)((int)poVar36 + -0xc));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb1fb;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197b6;\n                                  uVar19 = dcgettext();\n                                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_25c = 0;\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\nLAB_00017e78:\n                      p_Var7 = local_27c;\n                      *(_Bool **)(poVar36 + -2) = &wrote_hole_at_eof;\n                      pdVar29 = local_228;\n                      *(stat **)((int)poVar36 + -0x14) = local_22c;\n                      *(undefined4 *)(poVar36 + -3) = 0xffffffff;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n                      *(char **)(poVar36 + -4) = local_1f8;\n                      *(char **)((int)poVar36 + -0x24) = local_200;\n                      *(uint *)(poVar36 + -5) = uVar16;\n                      *(uint *)((int)poVar36 + -0x2c) = local_25c;\n                      p_Var9 = local_208;\n                      *(code **)(poVar36 + -6) = local_258;\n                      *(undefined4 *)((int)poVar36 + -0x34) = 0x17ebc;\n                      _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,*(size_t *)(poVar36 + -6)\n                                           ,*(size_t *)((int)poVar36 + -0x2c),SUB81(poVar36[-5],0),\n                                           *(char **)((int)poVar36 + -0x24),*(char **)(poVar36 + -4)\n                                           ,*(uintmax_t *)((int)poVar36 + -0x1c),\n                                           *(off_t **)((int)poVar36 + -0x14),\n                                           *(_Bool **)(poVar36 + -2));\n                      if (_Var12) {\n                        uVar19 = extraout_ECX_00;\n                        if (wrote_hole_at_eof != false) {\n                          *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var,_Var12);\n                          *(undefined4 *)(poVar36 + -1) = local_1d0;\n                          *(undefined4 *)((int)poVar36 + -0xc) = _local_copy_into_self;\n                          *(dir_list **)(poVar36 + -2) = local_228;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19fbf;\n                          iVar17 = ftruncate64((int)poVar36[-2],*(__off64_t *)((int)poVar36 + -0xc))\n                          ;\n                          uVar19 = extraout_ECX_13;\n                          if (iVar17 < 0) {\nLAB_00019fca:\n                            *(int *)((int)poVar36 + -4) = iVar17;\n                            *(int *)(poVar36 + -1) = iVar17;\n                            *(char **)((int)poVar36 + -0xc) = local_1f8;\n                            *(undefined4 *)(poVar36 + -2) = 4;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fd9;\n                            pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                     *(char **)((int)poVar36 + -0xc));\n                            *(undefined4 *)(poVar36 + -1) = 5;\n                            ppuVar35 = (undefined **)((int)ppuVar35 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                            *(undefined4 *)(poVar36 + -2) = 0;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fee;\n                            uVar19 = dcgettext();\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19ff5;\n                            piVar21 = __errno_location();\n                            *(char **)((int)poVar36 + -0x14) = pcVar18;\n                            *(undefined4 *)(poVar36 + -3) = uVar19;\n                            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                            *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar14 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (local_1f0->preserve_timestamps != false) {\n                      timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n                      timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n                      timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n                      timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n                      *(__syscall_slong_t *)((int)poVar36 + -4) = src_sb.st_mtim.tv_nsec;\n                      *(timespec **)(poVar36 + -1) = timespec;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(dir_list **)(poVar36 + -2) = local_228;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1988f;\n                      iVar17 = fdutimens((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                         *(timespec **)(poVar36 + -1));\n                      uVar19 = extraout_ECX_09;\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)(poVar36 + -1) = iVar17;\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        *(undefined4 *)(poVar36 + -2) = 4;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198a9;\n                        pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                 *(char **)((int)poVar36 + -0xc));\n                        *(undefined4 *)(poVar36 + -1) = 5;\n                        *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n                        *(undefined4 *)(poVar36 + -2) = 0;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198be;\n                        uVar19 = dcgettext();\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198c5;\n                        piVar21 = __errno_location();\n                        *(char **)((int)poVar36 + -0x14) = pcVar18;\n                        *(undefined4 *)(poVar36 + -3) = uVar19;\n                        *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                        *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)((int)poVar36 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    pcVar18 = local_1f8;\n                    pdVar29 = local_228;\n                    if ((local_1f0->preserve_ownership != false) &&\n                       ((src_sb.st_uid != dst_back_sb.st_uid ||\n                        (dst_back_sb.st_uid = dst_back_sb.st_gid,\n                        src_sb.st_gid != dst_back_sb.st_gid)))) {\n                      *(__uid_t *)((int)poVar36 + -4) = dst_back_sb.st_uid;\n                      uVar16 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(poVar36 + -1) = local_240;\n                      *(uint *)((int)poVar36 + -0xc) = uVar16;\n                      *(stat **)(poVar36 + -2) = &src_sb;\n                      pcVar31 = local_1f0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x17f33;\n                      iVar17 = set_owner(pcVar31,pcVar18,(int)pdVar29,*(stat **)(poVar36 + -2),\n                                         *(_Bool *)((int)poVar36 + -0xc),*(stat **)(poVar36 + -1));\n                      if (iVar17 == -1) goto LAB_000197c4;\n                      uVar19 = extraout_ECX_01;\n                      if (iVar17 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (local_1f0->preserve_xattr == false) {\nLAB_0001950b:\n                      bVar14 = 1;\n                    }\n                    else {\n                      pcVar31 = local_1f0;\n                      if ((dst_back_sb.st_mode & 0x80) == 0) {\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19e80;\n                        pcVar31 = (cp_options *)geteuid();\n                        pcVar18 = local_1f8;\n                        pdVar29 = local_228;\n                        if (pcVar31 == (cp_options *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19ea0;\n                        iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,0x180);\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        uVar16 = CONCAT31((int3)((uint)iVar17 >> 8),iVar17 == 0);\n                        *(uint *)((int)poVar36 + -4) = uVar16;\n                        *(uint *)(poVar36 + -1) = uVar16;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = pdVar29;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19ec7;\n                        bVar14 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_12;\n                        if (!(bool)bVar14) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                        *(cp_options **)(poVar36 + -1) = pcVar31;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17f8c;\n                        _Var12 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar16 = (uint)_Var12;\n                        uVar19 = extraout_ECX_02;\n                        if (_Var12) goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (stat *)CONCAT31(local_20c._1_3_,\n                                                     local_1f0->require_preserve_xattr);\n                        bVar14 = local_1f0->require_preserve_xattr ^ 1;\n                      }\n                      pcVar18 = local_1f8;\n                      pdVar29 = local_228;\n                      if ((char)uVar16 != '\0') {\n                        uVar16 = ~local_278 & local_284;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x17fd3;\n                        fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                        uVar19 = extraout_ECX_03;\n                      }\n                    }\n                    pcVar31 = local_1f0;\n                    if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n                      if (local_1f0->set_mode == false) {\n                        bVar49 = (byte)local_1f4 & local_1f0->explicit_no_preserve_mode;\n                        if (bVar49 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a00f;\n                            mVar30 = cached_umask();\n                            pcVar18 = local_1f8;\n                            pdVar29 = local_228;\n                            uVar16 = local_284;\n                            if ((local_278 & ~mVar30) != 0) {\n                              *(undefined4 *)((int)poVar36 + -4) = 0x1a034;\n                              iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                              if (iVar17 != 0) {\n                                *(int *)((int)poVar36 + -4) = iVar17;\n                                *(int *)(poVar36 + -1) = iVar17;\n                                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                *(undefined4 *)(poVar36 + -2) = 4;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a04b;\n                                local_21c = (code *)quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                                   *(char **)((int)poVar36 + -0xc));\n                                *(undefined4 *)(poVar36 + -1) = 5;\n                                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                                *(undefined4 *)(poVar36 + -2) = 0;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a064;\n                                local_20c = (stat *)dcgettext();\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a06f;\n                                piVar21 = __errno_location();\n                                psVar20 = local_20c;\n                                *(code **)((int)poVar36 + -0x14) = local_21c;\n                                *(stat **)(poVar36 + -3) = psVar20;\n                                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)((int)poVar36 + -4) = 0x1a1d2;\n                          mVar30 = cached_umask();\n                          *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_01;\n                          *(mode_t *)(poVar36 + -1) = ~mVar30 & 0x1b6;\n                          *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                          *(char **)(poVar36 + -2) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1ec;\n                          iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                           *(mode_t *)(poVar36 + -1));\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar49);\n                          if (iVar17 != 0) {\n                            bVar14 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                        *(mode_t *)(poVar36 + -1) = pcVar31->mode;\n                        *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                        *(char **)(poVar36 + -2) = local_1f8;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0e8;\n                        iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                         *(mode_t *)(poVar36 + -1));\n                        if (iVar17 != 0) {\n                          bVar14 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(poVar36 + -2) = local_244;\n                      *(dir_list **)((int)poVar36 + -0x14) = local_228;\n                      *(char **)(poVar36 + -3) = local_1f8;\n                      *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                      *(char **)(poVar36 + -4) = local_200;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x1961d;\n                      iVar17 = copy_acl(*(char **)(poVar36 + -4),*(int *)((int)poVar36 + -0x1c),\n                                        *(char **)(poVar36 + -3),*(int *)((int)poVar36 + -0x14),\n                                        *(mode_t *)(poVar36 + -2));\n                      if ((iVar17 != 0) && (local_1f0->require_preserve != false)) {\n                        bVar14 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar17 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar16 = 0xffffffff;\n                    pcVar18 = local_1f8;\n                    do {\n                      if (uVar16 == 0) break;\n                      uVar16 = uVar16 - 1;\n                      cVar13 = *pcVar18;\n                      pcVar18 = pcVar18 + (uint)bVar49 * -2 + 1;\n                    } while (cVar13 != '\0');\n                    iVar17 = (local_1f8[~uVar16 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar17 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n                if (local_1f0->move_mode == false) {\n                  *(uint *)((int)poVar36 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar32);\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x193f6;\n                  iVar15 = __lxstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                      *(stat64 **)(poVar36 + -1));\n                  if ((iVar15 == 0) && ((dst_back_sb.st_mode & 0xf000) == 0xa000)) {\n                    uVar16 = (uint)local_1f0->open_dangling_dest_symlink;\n                    if (local_1f0->open_dangling_dest_symlink == false) {\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a217;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a22c;\n                      uVar19 = dcgettext();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)((int)poVar36 + -4) = uVar16;\n                    *(code **)(poVar36 + -1) = local_21c;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 0x41;\n                    *(char **)(poVar36 + -2) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19434;\n                    local_228 = (dir_list *)\n                                open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n                    iVar17 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19126;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1913b;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = iVar17;\nLAB_00018b73:\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)((int)poVar36 + -0xc) =\n                 (-(uint)(local_1f0->data_copy_required == false) & 0xfffffe00) + 0x201;\n            *(char **)(poVar36 + -2) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17c4d;\n            local_228 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            pcVar10 = local_1f0;\n            if ((pcVar31->set_security_context == false) &&\n               (pcVar31->preserve_security_context == false)) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)((int)poVar36 + -4) = 0x19270;\n              piVar21 = __errno_location();\n              if (local_1f0->unlink_dest_after_failed_open == false) {\n                iVar17 = *piVar21;\n                if ((iVar17 == 2) && (local_1f0->move_mode == false)) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19290;\n              iVar17 = unlink(*(char **)(poVar36 + -2));\n              if (iVar17 != 0) {\n                *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                *(cp_options **)(poVar36 + -1) = pcVar31;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a104;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a119;\n                uVar19 = dcgettext();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                goto LAB_00018b73;\n              }\n              if (local_1f0->verbose != false) {\n                *(undefined4 *)((int)poVar36 + -4) = extraout_ECX_04;\n                *(undefined4 *)(poVar36 + -1) = extraout_ECX_04;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0aa;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "removed %s\n";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0bf;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -1) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n                *(undefined4 *)(poVar36 + -2) = 1;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->set_security_context);\n              if (local_1f0->set_security_context == false) goto LAB_000190a0;\n              *(cp_options **)(poVar36 + -2) = local_1f0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 1;\n              *(uint *)(poVar36 + -3) = local_284;\n              *(char **)((int)poVar36 + -0x1c) = local_1f8;\n              *(char **)(poVar36 + -4) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x24) = 0x192f1;\n              bVar14 = set_process_security_ctx\n                                 (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                                  *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                                  *(cp_options **)(poVar36 + -2));\n              if ((bool)bVar14) goto LAB_00019094;\n              local_220 = (code *)0x0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              _Var12 = local_1f0->preserve_security_context;\n              *(cp_options **)((int)poVar36 + -4) = local_1f0;\n              *(undefined4 *)(poVar36 + -1) = 0;\n              *(uint *)((int)poVar36 + -0xc) = (uint)_Var12;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1952e;\n              bVar14 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                  SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n              if ((bool)bVar14) {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,pcVar10->require_preserve_context);\n              if (pcVar10->require_preserve_context == false) goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\nLAB_00018028:\n              *(dir_list **)(poVar36 + -2) = local_228;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18036;\n              iVar17 = close((int)poVar36[-2]);\n              if (iVar17 < 0) {\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1964e;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19663;\n                uVar19 = dcgettext();\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1966a;\n                piVar21 = __errno_location();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)((int)poVar36 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(_Bool **)(poVar36 + -2) = local_208;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18056;\n            iVar17 = close((int)poVar36[-2]);\n            if (iVar17 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e7e;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e93;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e9a;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(poVar36 + -2) = local_220;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1806f;\n            free(*(void **)(poVar36 + -2));\n            local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n            if (bVar14 == 0) goto LAB_00016fad;\n          }\n          else {\n            bVar14 = 0;\n            if (local_238 == (stat64 *)0x1000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)0x0;\n              dst_back_sb.st_dev._4_4_ = 0;\n              uVar16 = ~local_23c & local_204;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              *(uint *)(poVar36 + -1) = uVar16;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18dbe;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(uint *)((int)poVar36 + -0xc) = uVar16 & 0xffffefff;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18de5;\n                iVar17 = mkfifo(*(char **)(poVar36 + -2),*(__mode_t *)((int)poVar36 + -0xc));\n                local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)(poVar36 + -1) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18e07;\n                  pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  poVar41 = poVar36 + -1;\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  pcVar18 = "cannot create fifo %s";\n                  goto LAB_00016f90;\n                }\n              }\n            }\n            else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)src_sb.st_rdev;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              dst_back_sb.st_dev._4_4_ = src_sb.st_rdev._4_4_;\n              *(uint *)(poVar36 + -1) = ~local_23c & local_204;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x16f59;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16f7c;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot create special file %s";\n                goto LAB_00016f90;\n              }\n            }\n            else {\n              if (local_238 != (stat64 *)0xa000) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18e30;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "%s has unknown file type";\n                goto LAB_00016e8b;\n              }\n              *(undefined4 *)((int)poVar36 + -0xc) = (undefined4)src_sb.st_size;\n              *(char **)(poVar36 + -2) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a38;\n              pcVar18 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                            *(size_t *)((int)poVar36 + -0xc));\n              if (pcVar18 == (char *)0x0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x194d0;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot read symbolic link %s";\n                goto LAB_00016f90;\n              }\n              *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n              *(char **)(poVar36 + -2) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a5e;\n              iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                       *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n              if (iVar17 < 0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x19315;\n                piVar21 = __errno_location();\n                local_208 = (_Bool *)*piVar21;\n                if ((_Bool *)*piVar21 == (_Bool *)0x0) goto LAB_00018a69;\n                if (((local_1f0->update != true) || ((byte)local_1f4 != '\0')) ||\n                   ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                  *(char **)(poVar36 + -2) = pcVar18;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19347;\n                  free(*(void **)(poVar36 + -2));\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19356;\n                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s";\n                  *(undefined4 *)(poVar36 + -2) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1936b;\n                  uVar19 = dcgettext();\n                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                  *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_0001937a;\n                  error();\n                }\n                uVar16 = 0xffffffff;\n                pcVar22 = pcVar18;\n                do {\n                  if (uVar16 == 0) break;\n                  uVar16 = uVar16 - 1;\n                  cVar13 = *pcVar22;\n                  pcVar22 = pcVar22 + (uint)bVar49 * -2 + 1;\n                } while (cVar13 != '\0');\n                iVar17 = ~uVar16 - 1;\n                if ((dst_sb.st_size._4_4_ != 0) || ((int)dst_sb.st_size != iVar17))\n                goto LAB_0001933e;\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(int *)((int)poVar36 + -0xc) = (int)dst_sb.st_size;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e2b;\n                pcVar22 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                              *(size_t *)((int)poVar36 + -0xc));\n                if (pcVar22 == (char *)0x0) goto LAB_0001933e;\n                *(char **)((int)poVar36 + -4) = pcVar22;\n                *(char **)(poVar36 + -1) = pcVar22;\n                *(char **)((int)poVar36 + -0xc) = pcVar18;\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e41;\n                iVar17 = strcmp(*(char **)(poVar36 + -2),*(char **)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(char **)(poVar36 + -2) = pcVar22;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a12b;\n                  free(*(void **)(poVar36 + -2));\n                  goto LAB_0001933e;\n                }\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e55;\n                free(*(void **)(poVar36 + -2));\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e5d;\n                free(*(void **)(poVar36 + -2));\n              }\n              else {\nLAB_00018a69:\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18a72;\n                free(*(void **)(poVar36 + -2));\n              }\n              if (local_1f0->preserve_security_context != false) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x193dc;\n                restore_default_fscreatecon_or_die();\n              }\n              local_208 = (_Bool *)CONCAT31(local_208._1_3_,1);\n              _Var12 = local_1f0->preserve_ownership;\n              bVar14 = _Var12;\n              if (_Var12 != false) {\n                *(__gid_t *)(poVar36 + -1) = src_sb.st_gid;\n                *(__uid_t *)((int)poVar36 + -0xc) = src_sb.st_uid;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18aba;\n                iVar17 = lchown(*(char **)(poVar36 + -2),*(__uid_t *)((int)poVar36 + -0xc),\n                                *(__gid_t *)(poVar36 + -1));\n                if (iVar17 == 0) {\n                  bVar14 = 0;\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                }\n                else {\n                  *(cp_options **)(poVar36 + -2) = local_1f0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18ad3;\n                  _Var12 = chown_failure_ok(*(cp_options **)(poVar36 + -2));\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                  if (!_Var12) {\n                    *(char **)((int)poVar36 + -4) = pcVar18;\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    *(char **)((int)poVar36 + -0xc) = "failed to preserve ownership for %s";\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19574;\n                    uVar19 = dcgettext();\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x1957b;\n                    piVar21 = __errno_location();\n                    *(char **)((int)poVar36 + -0x14) = local_1f8;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_0001958b;\n                    error();\n                  }\n                  bVar14 = 0;\n                }\n              }\n            }\n          }\nLAB_000166da:\n          bVar49 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->copy_as_regular);\n            _Var12 = (_Bool)((local_1f0->copy_as_regular ^ 1U) & bVar49);\n            if (_Var12 != false) {\n              _Var4 = local_1f0->preserve_security_context;\n              if ((local_1f0->set_security_context != false) || (bVar49 = _Var12, _Var4 != false)) {\n                *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(uint *)((int)poVar36 + -0xc) = (uint)_Var4;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x177d2;\n                bVar49 = set_file_security_ctx\n                                   (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                    SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n                if (!(bool)bVar49) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->require_preserve_context);\n                  bVar49 = _Var12;\n                  if (local_1f0->require_preserve_context != false) goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          bVar32 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((local_1f0->hard_link != false) && (bVar49 != 0)) || (bVar14 != 0))\n          goto LAB_0001614a;\n        }\n        if (local_1f0->preserve_timestamps == false) {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (local_1f0->preserve_xattr == false) goto LAB_0001614a;\n          *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n          pcVar22 = local_1f8;\n          pcVar18 = local_200;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x17511;\n          _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                             *(cp_options **)((int)poVar36 + -0xc));\n          if (_Var12) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve_xattr;\n        }\n        else {\n          timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n          timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n          timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n          timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n          if ((char)local_208 != '\0') {\n            *(timespec **)((int)poVar36 + -0xc) = timespec;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16805;\n            iVar17 = lutimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n            if (iVar17 != 0) {\n              *(undefined4 *)((int)poVar36 + -4) = 0x16811;\n              piVar21 = __errno_location();\n              if (*piVar21 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(timespec **)((int)poVar36 + -0xc) = timespec;\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18652;\n          iVar17 = utimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\nLAB_00016816:\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x10) = 4;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16826;\n            pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                     *(char **)((int)poVar36 + -0xc));\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16846;\n            piVar21 = __errno_location();\n            uVar16 = local_1fc;\n            *(char **)((int)poVar36 + -0x14) = pcVar18;\n            *(uint *)((int)poVar36 + -0x18) = uVar16;\n            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n            *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)((int)poVar36 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          pcVar18 = local_1f8;\n          if ((local_1f0->preserve_ownership != false) &&\n             ((((byte)local_1f4 != '\0' || (src_sb.st_uid != dst_sb.st_uid)) ||\n              (src_sb.st_gid != dst_sb.st_gid)))) {\n            *(stat **)((int)poVar36 + -8) = &dst_sb;\n            *(uint *)((int)poVar36 + -0xc) = (uint)local_1f4 & 0xff;\n            *(stat **)((int)poVar36 + -0x10) = &src_sb;\n            pcVar31 = local_1f0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x168d3;\n            iVar17 = set_owner(pcVar31,pcVar18,-1,*(stat **)((int)poVar36 + -0x10),\n                               *(_Bool *)((int)poVar36 + -0xc),*(stat **)((int)poVar36 + -8));\n            if (iVar17 == -1) goto LAB_00016148;\n            if (iVar17 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (local_1f0->preserve_xattr != false) {\n            *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18c76;\n            _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                               *(cp_options **)((int)poVar36 + -0xc));\n            if ((!_Var12) && (local_1f0->require_preserve_xattr != false)) goto LAB_00016148;\n          }\n          if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n            if (local_1f0->set_mode == false) {\n              if ((local_1f0->explicit_no_preserve_mode & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)((int)poVar36 + -4) = 0x191ba;\n                  mVar30 = cached_umask();\n                  local_23c = local_23c & ~mVar30;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(mode_t *)((int)poVar36 + -4) = ~mVar30;\n                      *(stat **)((int)poVar36 + -8) = &dst_sb;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)((int)poVar36 + -0x10) = 3;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19977;\n                      iVar17 = __lxstat64(*(int *)((int)poVar36 + -0x10),\n                                          *(char **)((int)poVar36 + -0xc),\n                                          *(stat64 **)((int)poVar36 + -8));\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)((int)poVar36 + -8) = iVar17;\n                        puVar37 = (undefined4 *)((int)poVar36 + -0xc);\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = dst_sb.st_mode;\n                    if ((local_23c & ~dst_sb.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)((int)poVar36 + -0xc) = local_270 | local_23c;\n                *(char **)((int)poVar36 + -0x10) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16976;\n                iVar17 = chmod(*(char **)((int)poVar36 + -0x10),*(__mode_t *)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)((int)poVar36 + -8) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x16990;\n                  pcVar22 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)((int)poVar36 + -8) = 5;\n                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169b0;\n                  piVar21 = __errno_location();\n                  pcVar18 = local_1f4;\n                  *(char **)((int)poVar36 + -0x14) = pcVar22;\n                  *(char **)((int)poVar36 + -0x18) = pcVar18;\n                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                  *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar16 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar16 = 0x1ff;\n              }\n              *(undefined4 *)((int)poVar36 + -4) = 0x191a8;\n              mVar30 = cached_umask();\n              *(mode_t *)((int)poVar36 + -8) = ~mVar30 & uVar16;\n            }\n            else {\n              *(mode_t *)((int)poVar36 + -8) = local_1f0->mode;\n            }\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffffff;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18ece;\n            iVar17 = set_acl(*(char **)((int)poVar36 + -0x10),*(int *)((int)poVar36 + -0xc),\n                             *(mode_t *)((int)poVar36 + -8));\n            if (iVar17 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)((int)poVar36 + -0x10) = local_204;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x18) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x20) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x183b6;\n          iVar17 = copy_acl(*(char **)((int)poVar36 + -0x20),*(int *)((int)poVar36 + -0x1c),\n                            *(char **)((int)poVar36 + -0x18),*(int *)((int)poVar36 + -0x14),\n                            *(mode_t *)((int)poVar36 + -0x10));\n          if (iVar17 == 0) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve;\n        }\n        if (cVar13 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  bVar32 = 0;\nLAB_0001614a:\n  if (iVar2 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return (_Bool)bVar32;\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)((int)poVar36 + -4) = 0x19855;\n  __stack_chk_fail_local();\n}" { (declaration "undefined4 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "code cVar3;" type_identifier identifier ;) (declaration "_Bool _Var4;" type_identifier identifier ;) (declaration "Interactive IVar5;" type_identifier identifier ;) (declaration "bool bVar6;" primitive_type identifier ;) (declaration "_Bool *p_Var7;" type_identifier (pointer_declarator "*p_Var7" * identifier) ;) (declaration "code *pcVar8;" type_identifier (pointer_declarator "*pcVar8" * identifier) ;) (declaration "_Bool *p_Var9;" type_identifier (pointer_declarator "*p_Var9" * identifier) ;) (declaration "cp_options *pcVar10;" type_identifier (pointer_declarator "*pcVar10" * identifier) ;) (declaration "__mode_t _Var11;" type_identifier identifier ;) (declaration "_Bool _Var12;" type_identifier identifier ;) (declaration "char cVar13;" primitive_type identifier ;) (declaration "byte bVar14;" type_identifier identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "char *pcVar18;" primitive_type (pointer_declarator "*pcVar18" * identifier) ;) (declaration "undefined4 uVar19;" type_identifier identifier ;) (declaration "stat *psVar20;" type_identifier (pointer_declarator "*psVar20" * identifier) ;) (declaration "int *piVar21;" primitive_type (pointer_declarator "*piVar21" * identifier) ;) (declaration "char *pcVar22;" primitive_type (pointer_declarator "*pcVar22" * identifier) ;) (declaration "Hash_table *pHVar23;" type_identifier (pointer_declarator "*pHVar23" * identifier) ;) (declaration "size_t sVar24;" primitive_type identifier ;) (declaration "Hash_table *pHVar25;" type_identifier (pointer_declarator "*pHVar25" * identifier) ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "__blksize_t _Var27;" type_identifier identifier ;) (declaration "code *pcVar28;" type_identifier (pointer_declarator "*pcVar28" * identifier) ;) (declaration "undefined3 extraout_var;" type_identifier identifier ;) (declaration "dir_list *pdVar29;" type_identifier (pointer_declarator "*pdVar29" * identifier) ;) (declaration "mode_t mVar30;" type_identifier identifier ;) (declaration "undefined3 extraout_var_00;" type_identifier identifier ;) (declaration "cp_options *pcVar31;" type_identifier (pointer_declarator "*pcVar31" * identifier) ;) (declaration "undefined3 extraout_var_01;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_00;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_01;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_02;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_03;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_04;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_05;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_06;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_07;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_08;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_09;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_10;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_11;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_12;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_13;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_14;" type_identifier identifier ;) (declaration "byte bVar32;" type_identifier identifier ;) (declaration "stat64 *psVar33;" type_identifier (pointer_declarator "*psVar33" * identifier) ;) (declaration "undefined4 extraout_EDX;" type_identifier identifier ;) (declaration "undefined4 extraout_EDX_00;" type_identifier identifier ;) (declaration "int iVar34;" primitive_type identifier ;) (declaration "undefined4 extraout_EDX_01;" type_identifier identifier ;) (declaration "undefined **ppuVar35;" type_identifier (pointer_declarator "**ppuVar35" * (pointer_declarator "*ppuVar35" * identifier)) ;) (declaration "off_t *poVar36;" type_identifier (pointer_declarator "*poVar36" * identifier) ;) (declaration "undefined4 *puVar37;" type_identifier (pointer_declarator "*puVar37" * identifier) ;) (declaration "undefined4 *puVar38;" type_identifier (pointer_declarator "*puVar38" * identifier) ;) (declaration "undefined1 *puVar39;" type_identifier (pointer_declarator "*puVar39" * identifier) ;) (declaration "undefined1 *puVar40;" type_identifier (pointer_declarator "*puVar40" * identifier) ;) (declaration "off_t *poVar41;" type_identifier (pointer_declarator "*poVar41" * identifier) ;) (declaration "off_t *poVar42;" type_identifier (pointer_declarator "*poVar42" * identifier) ;) (declaration "byte *pbVar43;" type_identifier (pointer_declarator "*pbVar43" * identifier) ;) (declaration "backup_type bVar44;" type_identifier identifier ;) (declaration "backup_type bVar45;" type_identifier identifier ;) (declaration "stat *psVar46;" type_identifier (pointer_declarator "*psVar46" * identifier) ;) (declaration "int in_GS_OFFSET;" primitive_type identifier ;) (declaration "undefined1 uVar47;" type_identifier identifier ;) (declaration "undefined1 uVar48;" type_identifier identifier ;) (declaration "byte bVar49;" type_identifier identifier ;) (declaration "bool bVar50;" primitive_type identifier ;) (declaration "__off64_t _Var51;" type_identifier identifier ;) (declaration "undefined3 in_stack_00000011;" type_identifier identifier ;) (declaration "undefined1 auStack_28c [7];" type_identifier (array_declarator "auStack_28c [7]" identifier [ number_literal ]) ;) (declaration "char local_285;" primitive_type identifier ;) (declaration "uint local_284;" type_identifier identifier ;) (declaration "undefined **local_280;" type_identifier (pointer_declarator "**local_280" * (pointer_declarator "*local_280" * identifier)) ;) (declaration "_Bool *local_27c;" type_identifier (pointer_declarator "*local_27c" * identifier) ;) (declaration "uint local_278;" type_identifier identifier ;) (declaration "Sparse_type local_274;" type_identifier identifier ;) (declaration "uint local_270;" type_identifier identifier ;) (declaration "code *local_26c;" type_identifier (pointer_declarator "*local_26c" * identifier) ;) (declaration "int local_268;" primitive_type identifier ;) (declaration "uint local_264;" type_identifier identifier ;) (declaration "int local_260;" primitive_type identifier ;) (declaration "uint local_25c;" type_identifier identifier ;) (declaration "code *local_258;" type_identifier (pointer_declarator "*local_258" * identifier) ;) (declaration "code *local_254;" type_identifier (pointer_declarator "*local_254" * identifier) ;) (declaration "int local_250;" primitive_type identifier ;) (declaration "uint local_24c;" type_identifier identifier ;) (declaration "int local_248;" primitive_type identifier ;) (declaration "uint local_244;" type_identifier identifier ;) (declaration "stat64 *local_240;" type_identifier (pointer_declarator "*local_240" * identifier) ;) (declaration "uint local_23c;" type_identifier identifier ;) (declaration "stat64 *local_238;" type_identifier (pointer_declarator "*local_238" * identifier) ;) (declaration "stat64 *local_234;" type_identifier (pointer_declarator "*local_234" * identifier) ;) (declaration "Hash_table *local_230;" type_identifier (pointer_declarator "*local_230" * identifier) ;) (declaration "stat *local_22c;" type_identifier (pointer_declarator "*local_22c" * identifier) ;) (declaration "dir_list *local_228;" type_identifier (pointer_declarator "*local_228" * identifier) ;) (declaration "__mode_t local_224;" type_identifier identifier ;) (declaration "code *local_220;" type_identifier (pointer_declarator "*local_220" * identifier) ;) (declaration "code *local_21c;" type_identifier (pointer_declarator "*local_21c" * identifier) ;) (declaration "int local_218;" primitive_type identifier ;) (declaration "stat *local_214;" type_identifier (pointer_declarator "*local_214" * identifier) ;) (declaration "__mode_t local_210;" type_identifier identifier ;) (declaration "stat *local_20c;" type_identifier (pointer_declarator "*local_20c" * identifier) ;) (declaration "_Bool *local_208;" type_identifier (pointer_declarator "*local_208" * identifier) ;) (declaration "uint local_204;" type_identifier identifier ;) (declaration "char *local_200;" primitive_type (pointer_declarator "*local_200" * identifier) ;) (declaration "uint local_1fc;" type_identifier identifier ;) (declaration "char *local_1f8;" primitive_type (pointer_declarator "*local_1f8" * identifier) ;) (declaration "char *local_1f4;" primitive_type (pointer_declarator "*local_1f4" * identifier) ;) (declaration "cp_options *local_1f0;" type_identifier (pointer_declarator "*local_1f0" * identifier) ;) (declaration "_Bool read_hole;" type_identifier identifier ;) (declaration "_Bool wrote_hole_at_eof;" type_identifier identifier ;) (declaration "int local_1d8;" primitive_type identifier ;) (declaration "_Bool local_copy_into_self;" type_identifier identifier ;) (declaration "undefined4 local_1d0;" type_identifier identifier ;) (declaration "stat64 *local_1c4;" type_identifier (pointer_declarator "*local_1c4" * identifier) ;) (declaration "char local_1c0;" primitive_type identifier ;) (declaration "char local_1bf;" primitive_type identifier ;) (declaration "__uid_t local_1bc;" type_identifier identifier ;) (declaration "stat src_sb;" type_identifier identifier ;) (declaration "stat dst_sb;" type_identifier identifier ;) (declaration "stat tmp_dst_sb;" type_identifier identifier ;) (declaration "stat dst_back_sb;" type_identifier identifier ;) (declaration "timespec timespec [2];" type_identifier (array_declarator "timespec [2]" identifier [ number_literal ]) ;) (expression_statement "bVar49 = 0;" (assignment_expression "bVar49 = 0" identifier = number_literal) ;) (expression_statement "ppuVar35 = &_GLOBAL_OFFSET_TABLE_;" (assignment_expression "ppuVar35 = &_GLOBAL_OFFSET_TABLE_" identifier = (pointer_expression "&_GLOBAL_OFFSET_TABLE_" & identifier)) ;) (expression_statement "local_200 = src_name;" (assignment_expression "local_200 = src_name" identifier = identifier) ;) (expression_statement "local_1f8 = dst_name;" (assignment_expression "local_1f8 = dst_name" identifier = identifier) ;) (expression_statement "local_22c = parent;" (assignment_expression "local_22c = parent" identifier = identifier) ;) (expression_statement "local_220 = (code *)copy_into_self;" (assignment_expression "local_220 = (code *)copy_into_self" identifier = (cast_expression "(code *)copy_into_self" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_21c = (code *)first_dir_created_per_command_line_arg;" (assignment_expression "local_21c = (code *)first_dir_created_per_command_line_arg" identifier = (cast_expression "(code *)first_dir_created_per_command_line_arg" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_228 = ancestors;" (assignment_expression "local_228 = ancestors" identifier = identifier) ;) (expression_statement "local_208 = rename_succeeded;" (assignment_expression "local_208 = rename_succeeded" identifier = identifier) ;) (expression_statement "local_1f0 = x;" (assignment_expression "local_1f0 = x" identifier = identifier) ;) (expression_statement "local_1fc = _command_line_arg;" (assignment_expression "local_1fc = _command_line_arg" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,new_dst);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,new_dst)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,new_dst)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,new_dst)" identifier (argument_list "(local_1f4._1_3_,new_dst)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,command_line_arg);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,command_line_arg)" identifier = (call_expression "CONCAT31(local_224._1_3_,command_line_arg)" identifier (argument_list "(local_224._1_3_,command_line_arg)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "iVar2 = *(int *)(in_GS_OFFSET + 0x14);" (assignment_expression "iVar2 = *(int *)(in_GS_OFFSET + 0x14)" identifier = (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*copy_into_self = false;" (assignment_expression "*copy_into_self = false" (pointer_expression "*copy_into_self" * identifier) = false) ;) (expression_statement "iVar17 = x->rename_errno;" (assignment_expression "iVar17 = x->rename_errno" identifier = (field_expression "x->rename_errno" identifier -> field_identifier)) ;) (if_statement "if (x->move_mode != false) {\n    if (-1 < iVar17) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);\n    iVar17 = renameatu(-100,src_name,-100,dst_name,1);\n    if (iVar17 != 0) {\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\nLAB_000161c0:\n    if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar17 = 0;\n    pcVar18 = local_1f8;\n    if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;\nLAB_00015eb2:\n    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 == 0) goto LAB_00015ed4;\nLAB_0001620a:\n    puVar37 = (undefined4 *)&stack0xfffffd68;\nLAB_0001620e:\n    puVar37[-1] = 4;\n    puVar37[-2] = 0x16215;\n    pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);\n    puVar38 = puVar37 + 1;\n    puVar37[1] = 5;\n    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);\nLAB_00016222:\n    *(undefined ***)((int)puVar38 + -4) = ppuVar35;\n    *(undefined4 *)((int)puVar38 + -8) = 0;\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;\n    uVar19 = dcgettext();\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x16231;\n    piVar21 = __errno_location();\n    *(char **)((int)puVar38 + -0xc) = pcVar18;\n    *(undefined4 *)((int)puVar38 + -0x10) = uVar19;\n    *(int *)((int)puVar38 + -0x14) = *piVar21;\n    *(undefined4 *)((int)puVar38 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;\n    error();\n  }" if (parenthesized_expression "(x->move_mode != false)" ( (binary_expression "x->move_mode != false" (field_expression "x->move_mode" identifier -> field_identifier) != false) )) (compound_statement "{\n    if (-1 < iVar17) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);\n    iVar17 = renameatu(-100,src_name,-100,dst_name,1);\n    if (iVar17 != 0) {\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\nLAB_000161c0:\n    if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar17 = 0;\n    pcVar18 = local_1f8;\n    if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;\nLAB_00015eb2:\n    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 == 0) goto LAB_00015ed4;\nLAB_0001620a:\n    puVar37 = (undefined4 *)&stack0xfffffd68;\nLAB_0001620e:\n    puVar37[-1] = 4;\n    puVar37[-2] = 0x16215;\n    pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);\n    puVar38 = puVar37 + 1;\n    puVar37[1] = 5;\n    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);\nLAB_00016222:\n    *(undefined ***)((int)puVar38 + -4) = ppuVar35;\n    *(undefined4 *)((int)puVar38 + -8) = 0;\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;\n    uVar19 = dcgettext();\n    *(undefined4 *)((int)puVar38 + -0xc) = 0x16231;\n    piVar21 = __errno_location();\n    *(char **)((int)puVar38 + -0xc) = pcVar18;\n    *(undefined4 *)((int)puVar38 + -0x10) = uVar19;\n    *(int *)((int)puVar38 + -0x14) = *piVar21;\n    *(undefined4 *)((int)puVar38 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n    *(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;\n    error();\n  }" { (if_statement "if (-1 < iVar17) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }" if (parenthesized_expression "(-1 < iVar17)" ( (binary_expression "-1 < iVar17" number_literal < identifier) )) (compound_statement "{\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }\n      goto LAB_00015e8b;\n    }" { (labeled_statement "LAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);" statement_identifier : (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar17 == 0)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,iVar17 == 0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,iVar17 == 0)" identifier (argument_list "(local_1f4._1_3_,iVar17 == 0)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (binary_expression "iVar17 == 0" identifier == number_literal) ))))) ;)) (if_statement "if (local_208 != (_Bool *)0x0) {\n        *local_208 = iVar17 == 0;\n      }" if (parenthesized_expression "(local_208 != (_Bool *)0x0)" ( (binary_expression "local_208 != (_Bool *)0x0" identifier != (cast_expression "(_Bool *)0x0" ( (type_descriptor "_Bool *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *local_208 = iVar17 == 0;\n      }" { (expression_statement "*local_208 = iVar17 == 0;" (assignment_expression "*local_208 = iVar17 == 0" (pointer_expression "*local_208" * identifier) = (binary_expression "iVar17 == 0" identifier == number_literal)) ;) })) (goto_statement "goto LAB_00015e8b;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,x->move_mode)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,x->move_mode)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,x->move_mode)" identifier (argument_list "(local_1f4._1_3_,x->move_mode)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (field_expression "x->move_mode" identifier -> field_identifier) ))))) ;) (expression_statement "iVar17 = renameatu(-100,src_name,-100,dst_name,1);" (assignment_expression "iVar17 = renameatu(-100,src_name,-100,dst_name,1)" identifier = (call_expression "renameatu(-100,src_name,-100,dst_name,1)" identifier (argument_list "(-100,src_name,-100,dst_name,1)" ( number_literal , identifier , number_literal , identifier , number_literal )))) ;) (if_statement "if (iVar17 != 0) {\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }" if (parenthesized_expression "(iVar17 != 0)" ( (binary_expression "iVar17 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar21 = __errno_location();\n      iVar17 = *piVar21;\n      goto LAB_00015e6f;\n    }" { (expression_statement "piVar21 = __errno_location();" (assignment_expression "piVar21 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar17 = *piVar21;" (assignment_expression "iVar17 = *piVar21" identifier = (pointer_expression "*piVar21" * identifier)) ;) (goto_statement "goto LAB_00015e6f;" goto statement_identifier ;) })) (if_statement "if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }" if (parenthesized_expression "(local_208 != (_Bool *)0x0)" ( (binary_expression "local_208 != (_Bool *)0x0" identifier != (cast_expression "(_Bool *)0x0" ( (type_descriptor "_Bool *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_208 = true;\n    }" { (expression_statement "*local_208 = true;" (assignment_expression "*local_208 = true" (pointer_expression "*local_208" * identifier) = true) ;) })) (labeled_statement "LAB_000161c0:\n    if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }" statement_identifier : (if_statement "if (local_1f0->last_file != false) {\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }" if (parenthesized_expression "(local_1f0->last_file != false)" ( (binary_expression "local_1f0->last_file != false" (field_expression "local_1f0->last_file" identifier -> field_identifier) != false) )) (compound_statement "{\n      iVar17 = 0;\n      goto LAB_00015ef0;\n    }" { (expression_statement "iVar17 = 0;" (assignment_expression "iVar17 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00015ef0;" goto statement_identifier ;) }))) (expression_statement "iVar17 = 0;" (assignment_expression "iVar17 = 0" identifier = number_literal) ;) (expression_statement "pcVar18 = local_1f8;" (assignment_expression "pcVar18 = local_1f8" identifier = identifier) ;) (if_statement "if (local_1f0->dereference == DEREF_NEVER) goto LAB_000161e8;" if (parenthesized_expression "(local_1f0->dereference == DEREF_NEVER)" ( (binary_expression "local_1f0->dereference == DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) == identifier) )) (goto_statement "goto LAB_000161e8;" goto statement_identifier ;)) (labeled_statement "LAB_00015eb2:\n    iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);" statement_identifier : (expression_statement "iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb);" (assignment_expression "iVar15 = __xstat64(3,pcVar18,(stat64 *)&src_sb)" identifier = (call_expression "__xstat64(3,pcVar18,(stat64 *)&src_sb)" identifier (argument_list "(3,pcVar18,(stat64 *)&src_sb)" ( number_literal , identifier , (cast_expression "(stat64 *)&src_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&src_sb" & identifier)) )))) ;)) (if_statement "if (iVar15 == 0) goto LAB_00015ed4;" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00015ed4;" goto statement_identifier ;)) (labeled_statement "LAB_0001620a:\n    puVar37 = (undefined4 *)&stack0xfffffd68;" statement_identifier : (expression_statement "puVar37 = (undefined4 *)&stack0xfffffd68;" (assignment_expression "puVar37 = (undefined4 *)&stack0xfffffd68" identifier = (cast_expression "(undefined4 *)&stack0xfffffd68" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&stack0xfffffd68" & identifier))) ;)) (labeled_statement "LAB_0001620e:\n    puVar37[-1] = 4;" statement_identifier : (expression_statement "puVar37[-1] = 4;" (assignment_expression "puVar37[-1] = 4" (subscript_expression "puVar37[-1]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "puVar37[-2] = 0x16215;" (assignment_expression "puVar37[-2] = 0x16215" (subscript_expression "puVar37[-2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37);" (assignment_expression "pcVar18 = quotearg_style(puVar37[-1],(char *)*puVar37)" identifier = (call_expression "quotearg_style(puVar37[-1],(char *)*puVar37)" identifier (argument_list "(puVar37[-1],(char *)*puVar37)" ( (subscript_expression "puVar37[-1]" identifier [ number_literal ]) , (cast_expression "(char *)*puVar37" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar37" * identifier)) )))) ;) (expression_statement "puVar38 = puVar37 + 1;" (assignment_expression "puVar38 = puVar37 + 1" identifier = (binary_expression "puVar37 + 1" identifier + number_literal)) ;) (expression_statement "puVar37[1] = 5;" (assignment_expression "puVar37[1] = 5" (subscript_expression "puVar37[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193);" (assignment_expression "ppuVar35 = (undefined **)((int)ppuVar35 + -0xb193)" identifier = (cast_expression "(undefined **)((int)ppuVar35 + -0xb193)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar35 + -0xb193)" ( (binary_expression "(int)ppuVar35 + -0xb193" (cast_expression "(int)ppuVar35" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00016222:\n    *(undefined ***)((int)puVar38 + -4) = ppuVar35;" statement_identifier : (expression_statement "*(undefined ***)((int)puVar38 + -4) = ppuVar35;" (assignment_expression "*(undefined ***)((int)puVar38 + -4) = ppuVar35" (pointer_expression "*(undefined ***)((int)puVar38 + -4)" * (cast_expression "(undefined ***)((int)puVar38 + -4)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((int)puVar38 + -4)" ( (binary_expression "(int)puVar38 + -4" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)((int)puVar38 + -8) = 0;" (assignment_expression "*(undefined4 *)((int)puVar38 + -8) = 0" (pointer_expression "*(undefined4 *)((int)puVar38 + -8)" * (cast_expression "(undefined4 *)((int)puVar38 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar38 + -8)" ( (binary_expression "(int)puVar38 + -8" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)puVar38 + -0xc) = 0x1622a;" (assignment_expression "*(undefined4 *)((int)puVar38 + -0xc) = 0x1622a" (pointer_expression "*(undefined4 *)((int)puVar38 + -0xc)" * (cast_expression "(undefined4 *)((int)puVar38 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar38 + -0xc)" ( (binary_expression "(int)puVar38 + -0xc" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)((int)puVar38 + -0xc) = 0x16231;" (assignment_expression "*(undefined4 *)((int)puVar38 + -0xc) = 0x16231" (pointer_expression "*(undefined4 *)((int)puVar38 + -0xc)" * (cast_expression "(undefined4 *)((int)puVar38 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar38 + -0xc)" ( (binary_expression "(int)puVar38 + -0xc" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "piVar21 = __errno_location();" (assignment_expression "piVar21 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)((int)puVar38 + -0xc) = pcVar18;" (assignment_expression "*(char **)((int)puVar38 + -0xc) = pcVar18" (pointer_expression "*(char **)((int)puVar38 + -0xc)" * (cast_expression "(char **)((int)puVar38 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)puVar38 + -0xc)" ( (binary_expression "(int)puVar38 + -0xc" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)puVar38 + -0x10) = uVar19;" (assignment_expression "*(undefined4 *)((int)puVar38 + -0x10) = uVar19" (pointer_expression "*(undefined4 *)((int)puVar38 + -0x10)" * (cast_expression "(undefined4 *)((int)puVar38 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar38 + -0x10)" ( (binary_expression "(int)puVar38 + -0x10" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(int *)((int)puVar38 + -0x14) = *piVar21;" (assignment_expression "*(int *)((int)puVar38 + -0x14) = *piVar21" (pointer_expression "*(int *)((int)puVar38 + -0x14)" * (cast_expression "(int *)((int)puVar38 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar38 + -0x14)" ( (binary_expression "(int)puVar38 + -0x14" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "*piVar21" * identifier)) ;) (expression_statement "*(undefined4 *)((int)puVar38 + -0x18) = 0;" (assignment_expression "*(undefined4 *)((int)puVar38 + -0x18) = 0" (pointer_expression "*(undefined4 *)((int)puVar38 + -0x18)" * (cast_expression "(undefined4 *)((int)puVar38 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar38 + -0x18)" ( (binary_expression "(int)puVar38 + -0x18" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c;" (assignment_expression "*(undefined **)((int)puVar38 + -0x1c) = &UNK_0001623c" (pointer_expression "*(undefined **)((int)puVar38 + -0x1c)" * (cast_expression "(undefined **)((int)puVar38 + -0x1c)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)puVar38 + -0x1c)" ( (binary_expression "(int)puVar38 + -0x1c" (cast_expression "(int)puVar38" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (pointer_expression "&UNK_0001623c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_00015e8b:\n  if (iVar17 == 0) goto LAB_000161c0;" statement_identifier : (if_statement "if (iVar17 == 0) goto LAB_000161c0;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000161c0;" goto statement_identifier ;))) (if_statement "if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n    pcVar18 = local_200;\n    if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;\nLAB_000161e8:\n    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 != 0) goto LAB_0001620a;\nLAB_00015ed4:\n    local_204 = src_sb.st_mode;\n    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }\n  }" if (parenthesized_expression "((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO))" ( (binary_expression "(iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)" (parenthesized_expression "(iVar17 != 0x11)" ( (binary_expression "iVar17 != 0x11" identifier != number_literal) )) || (parenthesized_expression "(local_1f0->interactive != I_ALWAYS_NO)" ( (binary_expression "local_1f0->interactive != I_ALWAYS_NO" (field_expression "local_1f0->interactive" identifier -> field_identifier) != identifier) ))) )) (compound_statement "{\n    pcVar18 = local_200;\n    if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;\nLAB_000161e8:\n    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);\n    if (iVar15 != 0) goto LAB_0001620a;\nLAB_00015ed4:\n    local_204 = src_sb.st_mode;\n    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }\n  }" { (expression_statement "pcVar18 = local_200;" (assignment_expression "pcVar18 = local_200" identifier = identifier) ;) (if_statement "if (local_1f0->dereference != DEREF_NEVER) goto LAB_00015eb2;" if (parenthesized_expression "(local_1f0->dereference != DEREF_NEVER)" ( (binary_expression "local_1f0->dereference != DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) != identifier) )) (goto_statement "goto LAB_00015eb2;" goto statement_identifier ;)) (labeled_statement "LAB_000161e8:\n    iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);" statement_identifier : (expression_statement "iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb);" (assignment_expression "iVar15 = __lxstat64(3,pcVar18,(stat64 *)&src_sb)" identifier = (call_expression "__lxstat64(3,pcVar18,(stat64 *)&src_sb)" identifier (argument_list "(3,pcVar18,(stat64 *)&src_sb)" ( number_literal , identifier , (cast_expression "(stat64 *)&src_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&src_sb" & identifier)) )))) ;)) (if_statement "if (iVar15 != 0) goto LAB_0001620a;" if (parenthesized_expression "(iVar15 != 0)" ( (binary_expression "iVar15 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001620a;" goto statement_identifier ;)) (labeled_statement "LAB_00015ed4:\n    local_204 = src_sb.st_mode;" statement_identifier : (expression_statement "local_204 = src_sb.st_mode;" (assignment_expression "local_204 = src_sb.st_mode" identifier = (field_expression "src_sb.st_mode" identifier . field_identifier)) ;)) (if_statement "if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }" if (parenthesized_expression "(((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false))" ( (binary_expression "((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)" (parenthesized_expression "((src_sb.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(src_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(src_sb.st_mode & 0xf000)" ( (binary_expression "src_sb.st_mode & 0xf000" (field_expression "src_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) && (parenthesized_expression "(local_1f0->recursive == false)" ( (binary_expression "local_1f0->recursive == false" (field_expression "local_1f0->recursive" identifier -> field_identifier) == false) ))) )) (compound_statement "{\n      quotearg_style(shell_escape_always_quoting_style,local_200);\n      if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }\n                    /* WARNING: Subroutine does not return */\n      error();\n    }" { (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_200);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_200)" identifier (argument_list "(shell_escape_always_quoting_style,local_200)" ( identifier , identifier ))) ;) (if_statement "if (local_1f0->install_mode == false) {\n        dcgettext();\n      }\n      else {\n        dcgettext();\n      }" if (parenthesized_expression "(local_1f0->install_mode == false)" ( (binary_expression "local_1f0->install_mode == false" (field_expression "local_1f0->install_mode" identifier -> field_identifier) == false) )) (compound_statement "{\n        dcgettext();\n      }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n        dcgettext();\n      }" else (compound_statement "{\n        dcgettext();\n      }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) }))) comment (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (labeled_statement "LAB_00015ef0:\n  puVar40 = auStack_28c;" statement_identifier : (expression_statement "puVar40 = auStack_28c;" (assignment_expression "puVar40 = auStack_28c" identifier = identifier) ;)) (expression_statement "poVar36 = (off_t *)auStack_28c;" (assignment_expression "poVar36 = (off_t *)auStack_28c" identifier = (cast_expression "(off_t *)auStack_28c" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (if_statement "if (((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)) {\n    local_20c = &src_sb;\n    if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }\n    record_file(pHVar23,local_200,local_20c);\n  }" if (parenthesized_expression "(((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0))" ( (binary_expression "((byte)local_1fc != '\0') && (pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)" (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0)" ( (comma_expression "pHVar23 = local_1f0->src_info, pHVar23 != (Hash_table *)0x0" (assignment_expression "pHVar23 = local_1f0->src_info" identifier = (field_expression "local_1f0->src_info" identifier -> field_identifier)) , (binary_expression "pHVar23 != (Hash_table *)0x0" identifier != (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n    local_20c = &src_sb;\n    if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }\n    record_file(pHVar23,local_200,local_20c);\n  }" { (expression_statement "local_20c = &src_sb;" (assignment_expression "local_20c = &src_sb" identifier = (pointer_expression "&src_sb" & identifier)) ;) (if_statement "if (((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)) {\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }" if (parenthesized_expression "(((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups))" ( (binary_expression "((local_204 & 0xf000) != 0x4000) && (local_1f0->backup_type == no_backups)" (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(local_1f0->backup_type == no_backups)" ( (binary_expression "local_1f0->backup_type == no_backups" (field_expression "local_1f0->backup_type" identifier -> field_identifier) == identifier) ))) )) (compound_statement "{\n      _Var12 = seen_file(pHVar23,local_200,local_20c);\n      if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }\n      pHVar23 = local_1f0->src_info;\n    }" { (expression_statement "_Var12 = seen_file(pHVar23,local_200,local_20c);" (assignment_expression "_Var12 = seen_file(pHVar23,local_200,local_20c)" identifier = (call_expression "seen_file(pHVar23,local_200,local_20c)" identifier (argument_list "(pHVar23,local_200,local_20c)" ( identifier , identifier , identifier )))) ;) (if_statement "if (_Var12) {\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }" if (parenthesized_expression "(_Var12)" ( identifier )) (compound_statement "{\n        quotearg_style(shell_escape_always_quoting_style,local_200);\n        uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n        error(0,0,uVar19);\n      }" { (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_200);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_200)" identifier (argument_list "(shell_escape_always_quoting_style,local_200)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,0,uVar19);" (call_expression "error(0,0,uVar19)" identifier (argument_list "(0,0,uVar19)" ( number_literal , number_literal , identifier ))) ;) })) (expression_statement "pHVar23 = local_1f0->src_info;" (assignment_expression "pHVar23 = local_1f0->src_info" identifier = (field_expression "local_1f0->src_info" identifier -> field_identifier)) ;) })) (expression_statement "record_file(pHVar23,local_200,local_20c);" (call_expression "record_file(pHVar23,local_200,local_20c)" identifier (argument_list "(pHVar23,local_200,local_20c)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "local_20c = (stat *)0x1;" (assignment_expression "local_20c = (stat *)0x1" identifier = (cast_expression "(stat *)0x1" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_1f0->dereference != DEREF_ALWAYS) {\n    local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);\n  }" if (parenthesized_expression "(local_1f0->dereference != DEREF_ALWAYS)" ( (binary_expression "local_1f0->dereference != DEREF_ALWAYS" (field_expression "local_1f0->dereference" identifier -> field_identifier) != identifier) )) (compound_statement "{\n    local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);\n  }" { (expression_statement "local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc);" (assignment_expression "local_20c = (stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc)" identifier = (cast_expression "(stat *)(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc)" ( (binary_expression "local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS & local_1fc" (binary_expression "local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS" (field_expression "local_1f0->dereference" identifier -> field_identifier) == identifier) & identifier) )))) ;) })) (if_statement "if ((byte)local_1f4 == '\0') {\n    if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n    local_214 = (stat *)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    uVar16 = 0;\n    if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }\n    iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);\n    if (iVar17 < 0) {\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\n    pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));\n    puVar39 = auStack_28c;\n    if ((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;\n    poVar36 = (off_t *)auStack_28c;\n    if (local_1f0->preserve_security_context != false) {\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }\n    goto LAB_00016148;\n  }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n    local_214 = (stat *)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    uVar16 = 0;\n    if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }\n    iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);\n    if (iVar17 < 0) {\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }\n    pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));\n    puVar39 = auStack_28c;\n    if ((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;\n    poVar36 = (off_t *)auStack_28c;\n    if (local_1f0->preserve_security_context != false) {\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }\n    goto LAB_00016148;\n  }" { (if_statement "if ((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)) {\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }" if (parenthesized_expression "((iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO))" ( (binary_expression "(iVar17 != 0x11) || (local_1f0->interactive != I_ALWAYS_NO)" (parenthesized_expression "(iVar17 != 0x11)" ( (binary_expression "iVar17 != 0x11" identifier != number_literal) )) || (parenthesized_expression "(local_1f0->interactive != I_ALWAYS_NO)" ( (binary_expression "local_1f0->interactive != I_ALWAYS_NO" (field_expression "local_1f0->interactive" identifier -> field_identifier) != identifier) ))) )) (compound_statement "{\n      uVar16 = local_204 & 0xf000;\n      if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }\n      iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);\n      if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;\n      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }\n      if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;\n      bVar50 = false;\n      bVar6 = false;\nLAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;\n      psVar33 = (stat64 *)&src_sb;\n      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      _Var12 = same_name(local_200,local_1f8);\n      if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);\n      quotearg_n_style(0,shell_escape_always_quoting_style,local_200);\nLAB_000176b3:\n      uVar19 = dcgettext();\n      goto LAB_000176c0;\n    }" { (expression_statement "uVar16 = local_204 & 0xf000;" (assignment_expression "uVar16 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if (uVar16 == 0x8000) {\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }\n      else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }" if (parenthesized_expression "(uVar16 == 0x8000)" ( (binary_expression "uVar16 == 0x8000" identifier == number_literal) )) (compound_statement "{\nLAB_00016b80:\n        iVar15 = 0x100;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);\n        if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }\n      }" { (labeled_statement "LAB_00016b80:\n        iVar15 = 0x100;" statement_identifier : (expression_statement "iVar15 = 0x100;" (assignment_expression "iVar15 = 0x100" identifier = number_literal) ;)) (expression_statement "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode);" (assignment_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode)" identifier = (cast_expression "(stat *)CONCAT31(local_214._1_3_,local_1f0->move_mode)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_214._1_3_,local_1f0->move_mode)" identifier (argument_list "(local_214._1_3_,local_1f0->move_mode)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (field_expression "local_1f0->move_mode" identifier -> field_identifier) ))))) ;) (if_statement "if ((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))\n        {\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }" if (parenthesized_expression "((((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups))" ( (binary_expression "(((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)) &&\n           (local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups)" (parenthesized_expression "(((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false))" ( (binary_expression "((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)) &&\n            (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)" (parenthesized_expression "((local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false))" ( (binary_expression "(local_1f0->move_mode == false) &&\n             (local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)" (parenthesized_expression "(local_1f0->move_mode == false)" ( (binary_expression "local_1f0->move_mode == false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) == false) )) && (parenthesized_expression "(local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false)" ( (comma_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link),\n             local_1f0->symbolic_link == false" (assignment_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link)" identifier = (cast_expression "(stat *)CONCAT31(local_214._1_3_,local_1f0->symbolic_link)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_214._1_3_,local_1f0->symbolic_link)" identifier (argument_list "(local_214._1_3_,local_1f0->symbolic_link)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (field_expression "local_1f0->symbolic_link" identifier -> field_identifier) ))))) , (binary_expression "local_1f0->symbolic_link == false" (field_expression "local_1f0->symbolic_link" identifier -> field_identifier) == false)) ))) )) && (parenthesized_expression "(local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false)" ( (comma_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link),\n            local_1f0->hard_link == false" (assignment_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link)" identifier = (cast_expression "(stat *)CONCAT31(local_214._1_3_,local_1f0->hard_link)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_214._1_3_,local_1f0->hard_link)" identifier (argument_list "(local_214._1_3_,local_1f0->hard_link)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (field_expression "local_1f0->hard_link" identifier -> field_identifier) ))))) , (binary_expression "local_1f0->hard_link == false" (field_expression "local_1f0->hard_link" identifier -> field_identifier) == false)) ))) )) && (parenthesized_expression "(local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups)" ( (comma_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,1), local_1f0->backup_type == no_backups" (assignment_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,1)" identifier = (cast_expression "(stat *)CONCAT31(local_214._1_3_,1)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_214._1_3_,1)" identifier (argument_list "(local_214._1_3_,1)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , number_literal ))))) , (binary_expression "local_1f0->backup_type == no_backups" (field_expression "local_1f0->backup_type" identifier -> field_identifier) == identifier)) ))) )) (compound_statement "{\n          local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);\n          iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;\n        }" { (expression_statement "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening);" (assignment_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening)" identifier = (cast_expression "(stat *)CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_214._1_3_,local_1f0->unlink_dest_before_opening)" identifier (argument_list "(local_214._1_3_,local_1f0->unlink_dest_before_opening)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (field_expression "local_1f0->unlink_dest_before_opening" identifier -> field_identifier) ))))) ;) (expression_statement "iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8;" (assignment_expression "iVar15 = (uint)(local_1f0->unlink_dest_before_opening != false) << 8" identifier = (binary_expression "(uint)(local_1f0->unlink_dest_before_opening != false) << 8" (call_expression "(uint)(local_1f0->unlink_dest_before_opening != false)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0->unlink_dest_before_opening != false)" ( (binary_expression "local_1f0->unlink_dest_before_opening != false" (field_expression "local_1f0->unlink_dest_before_opening" identifier -> field_identifier) != false) ))) << number_literal)) ;) })) }) (else_clause "else {\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }" else (compound_statement "{\n        iVar15 = 0x100;\n        bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;\n        local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);\n        if (bVar32 == 0) goto LAB_00016b80;\n      }" { (expression_statement "iVar15 = 0x100;" (assignment_expression "iVar15 = 0x100" identifier = number_literal) ;) (expression_statement "bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U;" (assignment_expression "bVar32 = (uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U" identifier = (binary_expression "(uVar16 == 0xa000 || uVar16 == 0x4000) | local_1f0->copy_as_regular ^ 1U" (parenthesized_expression "(uVar16 == 0xa000 || uVar16 == 0x4000)" ( (binary_expression "uVar16 == 0xa000 || uVar16 == 0x4000" (binary_expression "uVar16 == 0xa000" identifier == number_literal) || (binary_expression "uVar16 == 0x4000" identifier == number_literal)) )) | (binary_expression "local_1f0->copy_as_regular ^ 1U" (field_expression "local_1f0->copy_as_regular" identifier -> field_identifier) ^ number_literal))) ;) (expression_statement "local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32);" (assignment_expression "local_214 = (stat *)CONCAT31(local_214._1_3_,bVar32)" identifier = (cast_expression "(stat *)CONCAT31(local_214._1_3_,bVar32)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_214._1_3_,bVar32)" identifier (argument_list "(local_214._1_3_,bVar32)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar32 == 0) goto LAB_00016b80;" if (parenthesized_expression "(bVar32 == 0)" ( (binary_expression "bVar32 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00016b80;" goto statement_identifier ;)) }))) (expression_statement "iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15);" (assignment_expression "iVar15 = __fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15)" identifier = (call_expression "__fxstatat64(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15)" identifier (argument_list "(3,-100,local_1f8,(stat64 *)&dst_sb,iVar15)" ( number_literal , number_literal , identifier , (cast_expression "(stat64 *)&dst_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_sb" & identifier)) , identifier )))) ;) (if_statement "if (iVar15 == 0) {\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" if (parenthesized_expression "(iVar15 == 0)" ( (binary_expression "iVar15 == 0" identifier == number_literal) )) (compound_statement "{\n        local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);\n      }" { (expression_statement "local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (Hash_table *)((uint)local_230 & 0xffffff00)" identifier = (cast_expression "(Hash_table *)((uint)local_230 & 0xffffff00)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230 & 0xffffff00)" ( (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) }) (else_clause "else {\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" else (compound_statement "{\n        piVar21 = __errno_location();\n        if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }\n        local_214 = (stat *)((uint)local_214 & 0xffffff00);\n        if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" { (expression_statement "piVar21 = __errno_location();" (assignment_expression "piVar21 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar21 == 0x28) {\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }" if (parenthesized_expression "(*piVar21 == 0x28)" ( (binary_expression "*piVar21 == 0x28" (pointer_expression "*piVar21" * identifier) == number_literal) )) (compound_statement "{\n          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;\n          local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);\n        }" { (if_statement "if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;" if (parenthesized_expression "(local_1f0->unlink_dest_after_failed_open == false)" ( (binary_expression "local_1f0->unlink_dest_after_failed_open == false" (field_expression "local_1f0->unlink_dest_after_failed_open" identifier -> field_identifier) == false) )) (goto_statement "goto LAB_00017070;" goto statement_identifier ;)) (expression_statement "local_230 = (Hash_table *)((uint)local_230._1_3_ << 8);" (assignment_expression "local_230 = (Hash_table *)((uint)local_230._1_3_ << 8)" identifier = (cast_expression "(Hash_table *)((uint)local_230._1_3_ << 8)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230._1_3_ << 8)" ( (binary_expression "(uint)local_230._1_3_ << 8" (cast_expression "(uint)local_230._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_230._1_3_" identifier . field_identifier)) << number_literal) )))) ;) }) (else_clause "else {\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }" else (compound_statement "{\n          local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);\n          if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }\n        }" { (expression_statement "local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1);" (assignment_expression "local_230 = (Hash_table *)CONCAT31(local_230._1_3_,1)" identifier = (cast_expression "(Hash_table *)CONCAT31(local_230._1_3_,1)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_230._1_3_,1)" identifier (argument_list "(local_230._1_3_,1)" ( (field_expression "local_230._1_3_" identifier . field_identifier) , number_literal ))))) ;) (if_statement "if (*piVar21 != 2) {\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }" if (parenthesized_expression "(*piVar21 != 2)" ( (binary_expression "*piVar21 != 2" (pointer_expression "*piVar21" * identifier) != number_literal) )) (compound_statement "{\nLAB_00017070:\n            local_1f0 = (cp_options *)piVar21;\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,*(int *)local_1f0,uVar19);\n          }" { (labeled_statement "LAB_00017070:\n            local_1f0 = (cp_options *)piVar21;" statement_identifier : (expression_statement "local_1f0 = (cp_options *)piVar21;" (assignment_expression "local_1f0 = (cp_options *)piVar21" identifier = (cast_expression "(cp_options *)piVar21" ( (type_descriptor "cp_options *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(shell_escape_always_quoting_style,local_1f8)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,*(int *)local_1f0,uVar19);" (call_expression "error(0,*(int *)local_1f0,uVar19)" identifier (argument_list "(0,*(int *)local_1f0,uVar19)" ( number_literal , (pointer_expression "*(int *)local_1f0" * (cast_expression "(int *)local_1f0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) , identifier ))) ;) })) }))) (expression_statement "local_214 = (stat *)((uint)local_214 & 0xffffff00);" (assignment_expression "local_214 = (stat *)((uint)local_214 & 0xffffff00)" identifier = (cast_expression "(stat *)((uint)local_214 & 0xffffff00)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_214 & 0xffffff00)" ( (binary_expression "(uint)local_214 & 0xffffff00" (cast_expression "(uint)local_214" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar17 != 0x11) {\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(iVar17 != 0x11)" ( (binary_expression "iVar17 != 0x11" identifier != number_literal) )) (compound_statement "{\n          uVar47 = local_230._0_1_;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" { (expression_statement "uVar47 = local_230._0_1_;" (assignment_expression "uVar47 = local_230._0_1_" identifier = (field_expression "local_230._0_1_" identifier . field_identifier)) ;) (expression_statement "local_230 = (Hash_table *)0x0;" (assignment_expression "local_230 = (Hash_table *)0x0" identifier = (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar47)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,uVar47)" identifier (argument_list "(local_1f4._1_3_,uVar47)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) }))) (if_statement "if (local_1f0->interactive == I_ALWAYS_NO) goto LAB_00016048;" if (parenthesized_expression "(local_1f0->interactive == I_ALWAYS_NO)" ( (binary_expression "local_1f0->interactive == I_ALWAYS_NO" (field_expression "local_1f0->interactive" identifier -> field_identifier) == identifier) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (if_statement "if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)) {\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }" if (parenthesized_expression "((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev))" ( (binary_expression "(src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&\n         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)" (parenthesized_expression "(src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino)" ( (binary_expression "src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&\n           (char *)src_sb.st_ino == (char *)dst_sb.st_ino" (binary_expression "src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_" (field_expression "src_sb.st_ino._4_4_" (field_expression "src_sb.st_ino" identifier . field_identifier) . field_identifier) == (field_expression "dst_sb.st_ino._4_4_" (field_expression "dst_sb.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "(char *)src_sb.st_ino == (char *)dst_sb.st_ino" (cast_expression "(char *)src_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_ino" identifier . field_identifier)) == (cast_expression "(char *)dst_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "dst_sb.st_ino" identifier . field_identifier)))) )) && (parenthesized_expression "(src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev)" ( (binary_expression "src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&\n          (stat *)src_sb.st_dev == (stat *)dst_sb.st_dev" (binary_expression "src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_" (field_expression "src_sb.st_dev._4_4_" (field_expression "src_sb.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "dst_sb.st_dev._4_4_" (field_expression "dst_sb.st_dev" identifier . field_identifier) . field_identifier)) && (binary_expression "(stat *)src_sb.st_dev == (stat *)dst_sb.st_dev" (cast_expression "(stat *)src_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_dev" identifier . field_identifier)) == (cast_expression "(stat *)dst_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dst_sb.st_dev" identifier . field_identifier)))) ))) )) (compound_statement "{\n        cVar13 = local_1f0->hard_link;\n        if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);\n        goto LAB_00016048;\n      }" { (expression_statement "cVar13 = local_1f0->hard_link;" (assignment_expression "cVar13 = local_1f0->hard_link" identifier = (field_expression "local_1f0->hard_link" identifier -> field_identifier)) ;) (if_statement "if ((_Bool)cVar13 == false) {\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" if (parenthesized_expression "((_Bool)cVar13 == false)" ( (binary_expression "(_Bool)cVar13 == false" (cast_expression "(_Bool)cVar13" ( (type_descriptor "_Bool" type_identifier) ) identifier) == false) )) (compound_statement "{\n          if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)&tmp_dst_sb;\n          iVar17 = __lxstat64(3,local_1f8,local_234);\n          if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" { (if_statement "if (local_1f0->dereference == DEREF_NEVER) {\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }" if (parenthesized_expression "(local_1f0->dereference == DEREF_NEVER)" ( (binary_expression "local_1f0->dereference == DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) == identifier) )) (compound_statement "{\n            bVar50 = true;\n            bVar6 = true;\n            goto LAB_000175fc;\n          }" { (expression_statement "bVar50 = true;" (assignment_expression "bVar50 = true" identifier = true) ;) (expression_statement "bVar6 = true;" (assignment_expression "bVar6 = true" identifier = true) ;) (goto_statement "goto LAB_000175fc;" goto statement_identifier ;) })) (expression_statement "local_234 = (stat64 *)&tmp_dst_sb;" (assignment_expression "local_234 = (stat64 *)&tmp_dst_sb" identifier = (cast_expression "(stat64 *)&tmp_dst_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&tmp_dst_sb" & identifier))) ;) (expression_statement "iVar17 = __lxstat64(3,local_1f8,local_234);" (assignment_expression "iVar17 = __lxstat64(3,local_1f8,local_234)" identifier = (call_expression "__lxstat64(3,local_1f8,local_234)" identifier (argument_list "(3,local_1f8,local_234)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (iVar17 == 0) {\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (compound_statement "{\n            local_240 = (stat64 *)&dst_back_sb;\n            iVar17 = __lxstat64(3,local_200,local_240);\n            if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;\n          }" { (expression_statement "local_240 = (stat64 *)&dst_back_sb;" (assignment_expression "local_240 = (stat64 *)&dst_back_sb" identifier = (cast_expression "(stat64 *)&dst_back_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_back_sb" & identifier))) ;) (expression_statement "iVar17 = __lxstat64(3,local_200,local_240);" (assignment_expression "iVar17 = __lxstat64(3,local_200,local_240)" identifier = (call_expression "__lxstat64(3,local_200,local_240)" identifier (argument_list "(3,local_200,local_240)" ( number_literal , identifier , identifier )))) ;) (if_statement "if ((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;" if (parenthesized_expression "((iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false))))" ( (binary_expression "(iVar17 == 0) &&\n               (((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))" (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) && (parenthesized_expression "(((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)))" ( (parenthesized_expression "((bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false))" ( (binary_expression "(bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||\n                (local_1f0->unlink_dest_before_opening == false)" (parenthesized_expression "(bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000))" ( (comma_expression "bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)" (assignment_expression "bVar50 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_)" identifier = (binary_expression "(dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n                           ((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_)" (parenthesized_expression "(dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino)" ( (binary_expression "dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino" (binary_expression "dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_" (field_expression "dst_back_sb.st_ino._4_4_" (field_expression "dst_back_sb.st_ino" identifier . field_identifier) . field_identifier) == (field_expression "tmp_dst_sb.st_ino._4_4_" (field_expression "tmp_dst_sb.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "(char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino" (cast_expression "(char *)dst_back_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "dst_back_sb.st_ino" identifier . field_identifier)) == (cast_expression "(char *)tmp_dst_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "tmp_dst_sb.st_ino" identifier . field_identifier)))) )) && (parenthesized_expression "((stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_)" ( (binary_expression "(stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev &&\n                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_" (binary_expression "(stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev" (cast_expression "(stat *)dst_back_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dst_back_sb.st_dev" identifier . field_identifier)) == (cast_expression "(stat *)tmp_dst_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "tmp_dst_sb.st_dev" identifier . field_identifier))) && (binary_expression "dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_" (field_expression "dst_back_sb.st_dev._4_4_" (field_expression "dst_back_sb.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "tmp_dst_sb.st_dev._4_4_" (field_expression "tmp_dst_sb.st_dev" identifier . field_identifier) . field_identifier))) )))) , (comma_expression "psVar33 = local_240\n                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)" (assignment_expression "psVar33 = local_240" identifier = identifier) , (binary_expression "(dst_back_sb.st_mode & 0xf000) != 0xa000 ||\n                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)" (binary_expression "(dst_back_sb.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(dst_back_sb.st_mode & 0xf000)" ( (binary_expression "dst_back_sb.st_mode & 0xf000" (field_expression "dst_back_sb.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) || (parenthesized_expression "((tmp_dst_sb.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(tmp_dst_sb.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(tmp_dst_sb.st_mode & 0xf000)" ( (binary_expression "tmp_dst_sb.st_mode & 0xf000" (field_expression "tmp_dst_sb.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))))) )) || (parenthesized_expression "(local_1f0->unlink_dest_before_opening == false)" ( (binary_expression "local_1f0->unlink_dest_before_opening == false" (field_expression "local_1f0->unlink_dest_before_opening" identifier -> field_identifier) == false) ))) )) ))) )) (goto_statement "goto LAB_0001761e;" goto statement_identifier ;)) })) (labeled_statement "LAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" statement_identifier : (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" ( (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (labeled_statement "LAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);" statement_identifier : (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar13)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,cVar13)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,cVar13)" identifier (argument_list "(local_1f4._1_3_,cVar13)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;)) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (if_statement "if (local_1f0->dereference != DEREF_NEVER) goto LAB_00016048;" if (parenthesized_expression "(local_1f0->dereference != DEREF_NEVER)" ( (binary_expression "local_1f0->dereference != DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) != identifier) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (expression_statement "bVar50 = false;" (assignment_expression "bVar50 = false" identifier = false) ;) (expression_statement "bVar6 = false;" (assignment_expression "bVar6 = false" identifier = false) ;) (labeled_statement "LAB_000175fc:\n      local_234 = (stat64 *)&dst_sb;" statement_identifier : (expression_statement "local_234 = (stat64 *)&dst_sb;" (assignment_expression "local_234 = (stat64 *)&dst_sb" identifier = (cast_expression "(stat64 *)&dst_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_sb" & identifier))) ;)) (expression_statement "psVar33 = (stat64 *)&src_sb;" (assignment_expression "psVar33 = (stat64 *)&src_sb" identifier = (cast_expression "(stat64 *)&src_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&src_sb" & identifier))) ;) (if_statement "if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" if (parenthesized_expression "(((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000))" ( (binary_expression "((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((src_sb.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(src_sb.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(src_sb.st_mode & 0xf000)" ( (binary_expression "src_sb.st_mode & 0xf000" (field_expression "src_sb.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) )) || (parenthesized_expression "((dst_sb.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(dst_sb.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(dst_sb.st_mode & 0xf000)" ( (binary_expression "dst_sb.st_mode & 0xf000" (field_expression "dst_sb.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\nLAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar13 = local_1f0->move_mode;\n        if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }\n        if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" { (labeled_statement "LAB_0001761e:\n        if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" statement_identifier : (if_statement "if (local_1f0->backup_type != no_backups) {\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" if (parenthesized_expression "(local_1f0->backup_type != no_backups)" ( (binary_expression "local_1f0->backup_type != no_backups" (field_expression "local_1f0->backup_type" identifier -> field_identifier) != identifier) )) (compound_statement "{\n          if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" { (if_statement "if (bVar50) {\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }" if (parenthesized_expression "(bVar50)" ( identifier )) (compound_statement "{\n            _Var12 = same_name(local_200,local_1f8);\n            bVar32 = !_Var12;\n            cVar13 = false;\n            goto LAB_00018431;\n          }" { (expression_statement "_Var12 = same_name(local_200,local_1f8);" (assignment_expression "_Var12 = same_name(local_200,local_1f8)" identifier = (call_expression "same_name(local_200,local_1f8)" identifier (argument_list "(local_200,local_1f8)" ( identifier , identifier )))) ;) (expression_statement "bVar32 = !_Var12;" (assignment_expression "bVar32 = !_Var12" identifier = (unary_expression "!_Var12" ! identifier)) ;) (expression_statement "cVar13 = false;" (assignment_expression "cVar13 = false" identifier = false) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) })) (if_statement "if ((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;" if (parenthesized_expression "((((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))" ( (binary_expression "(((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000)" (parenthesized_expression "(((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000))" ( (binary_expression "((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)) ||\n              ((psVar33->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER))" ( (binary_expression "(local_1f0->move_mode != false) || (local_1f0->dereference == DEREF_NEVER)" (parenthesized_expression "(local_1f0->move_mode != false)" ( (binary_expression "local_1f0->move_mode != false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) != false) )) || (parenthesized_expression "(local_1f0->dereference == DEREF_NEVER)" ( (binary_expression "local_1f0->dereference == DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) == identifier) ))) )) || (parenthesized_expression "((psVar33->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar33->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar33->st_mode & 0xf000)" ( (binary_expression "psVar33->st_mode & 0xf000" (field_expression "psVar33->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "((local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "(local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" ( (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" identifier -> field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_000181e8;" goto statement_identifier ;)) (goto_statement "goto LAB_00017680;" goto statement_identifier ;) }))) (expression_statement "cVar13 = local_1f0->move_mode;" (assignment_expression "cVar13 = local_1f0->move_mode" identifier = (field_expression "local_1f0->move_mode" identifier -> field_identifier)) ;) (if_statement "if (((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)) {\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }" if (parenthesized_expression "(((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false))" ( (binary_expression "((_Bool)cVar13 == false) && (local_1f0->unlink_dest_before_opening == false)" (parenthesized_expression "((_Bool)cVar13 == false)" ( (binary_expression "(_Bool)cVar13 == false" (cast_expression "(_Bool)cVar13" ( (type_descriptor "_Bool" type_identifier) ) identifier) == false) )) && (parenthesized_expression "(local_1f0->unlink_dest_before_opening == false)" ( (binary_expression "local_1f0->unlink_dest_before_opening == false" (field_expression "local_1f0->unlink_dest_before_opening" identifier -> field_identifier) == false) ))) )) (compound_statement "{\n          if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }\n        }" { (if_statement "if ((psVar33->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }" if (parenthesized_expression "((psVar33->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar33->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar33->st_mode & 0xf000)" ( (binary_expression "psVar33->st_mode & 0xf000" (field_expression "psVar33->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }\n            goto LAB_000184a6;\n          }" { (labeled_statement "LAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;" statement_identifier : (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;)) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_0001849c:\n              cVar13 = local_1f0->move_mode;\n            }" { (labeled_statement "LAB_0001849c:\n              cVar13 = local_1f0->move_mode;" statement_identifier : (expression_statement "cVar13 = local_1f0->move_mode;" (assignment_expression "cVar13 = local_1f0->move_mode" identifier = (field_expression "local_1f0->move_mode" identifier -> field_identifier)) ;)) }) (else_clause "else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }" else (compound_statement "{\nLAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;\n              cVar13 = local_1f0->hard_link;\n              if ((_Bool)cVar13 != false) goto LAB_00018440;\n              cVar13 = local_1f0->move_mode;\n            }" { (labeled_statement "LAB_000187a8:\n              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;" statement_identifier : (if_statement "if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)) goto LAB_00016048;" if (parenthesized_expression "((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev))" ( (binary_expression "(*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino) ||\n                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)" (parenthesized_expression "(*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino)" ( (binary_expression "*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar33->st_ino != (int)local_234->st_ino" (binary_expression "*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4)" (pointer_expression "*(int *)((int)&psVar33->st_ino + 4)" * (cast_expression "(int *)((int)&psVar33->st_ino + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar33->st_ino + 4)" ( (binary_expression "(int)&psVar33->st_ino + 4" (cast_expression "(int)&psVar33->st_ino" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar33->st_ino" & (field_expression "psVar33->st_ino" identifier -> field_identifier))) + number_literal) )))) != (pointer_expression "*(int *)((int)&local_234->st_ino + 4)" * (cast_expression "(int *)((int)&local_234->st_ino + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_ino + 4)" ( (binary_expression "(int)&local_234->st_ino + 4" (cast_expression "(int)&local_234->st_ino" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_ino" & (field_expression "local_234->st_ino" identifier -> field_identifier))) + number_literal) ))))) || (binary_expression "(int)psVar33->st_ino != (int)local_234->st_ino" (cast_expression "(int)psVar33->st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar33->st_ino" identifier -> field_identifier)) != (cast_expression "(int)local_234->st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_234->st_ino" identifier -> field_identifier)))) )) || (parenthesized_expression "(*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev)" ( (binary_expression "*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)\n                  || *(char **)&psVar33->st_dev != *(char **)&local_234->st_dev" (binary_expression "*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&local_234->st_dev + 4)" (pointer_expression "*(char **)((int)&psVar33->st_dev + 4)" * (cast_expression "(char **)((int)&psVar33->st_dev + 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar33->st_dev + 4)" ( (binary_expression "(int)&psVar33->st_dev + 4" (cast_expression "(int)&psVar33->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar33->st_dev" & (field_expression "psVar33->st_dev" identifier -> field_identifier))) + number_literal) )))) != (pointer_expression "*(char **)((int)&local_234->st_dev + 4)" * (cast_expression "(char **)((int)&local_234->st_dev + 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_234->st_dev + 4)" ( (binary_expression "(int)&local_234->st_dev + 4" (cast_expression "(int)&local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_dev" & (field_expression "local_234->st_dev" identifier -> field_identifier))) + number_literal) ))))) || (binary_expression "*(char **)&psVar33->st_dev != *(char **)&local_234->st_dev" (pointer_expression "*(char **)&psVar33->st_dev" * (cast_expression "(char **)&psVar33->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&psVar33->st_dev" & (field_expression "psVar33->st_dev" identifier -> field_identifier)))) != (pointer_expression "*(char **)&local_234->st_dev" * (cast_expression "(char **)&local_234->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_234->st_dev" & (field_expression "local_234->st_dev" identifier -> field_identifier)))))) ))) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;))) (expression_statement "cVar13 = local_1f0->hard_link;" (assignment_expression "cVar13 = local_1f0->hard_link" identifier = (field_expression "local_1f0->hard_link" identifier -> field_identifier)) ;) (if_statement "if ((_Bool)cVar13 != false) goto LAB_00018440;" if (parenthesized_expression "((_Bool)cVar13 != false)" ( (binary_expression "(_Bool)cVar13 != false" (cast_expression "(_Bool)cVar13" ( (type_descriptor "_Bool" type_identifier) ) identifier) != false) )) (goto_statement "goto LAB_00018440;" goto statement_identifier ;)) (expression_statement "cVar13 = local_1f0->move_mode;" (assignment_expression "cVar13 = local_1f0->move_mode" identifier = (field_expression "local_1f0->move_mode" identifier -> field_identifier)) ;) }))) (goto_statement "goto LAB_000184a6;" goto statement_identifier ;) })) }) (else_clause "else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }" else (compound_statement "{\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }\n          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }\n        }" { (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (if_statement "if ((bVar50) && (1 < local_234->st_nlink)) {\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }" if (parenthesized_expression "((bVar50) && (1 < local_234->st_nlink))" ( (binary_expression "(bVar50) && (1 < local_234->st_nlink)" (parenthesized_expression "(bVar50)" ( identifier )) && (parenthesized_expression "(1 < local_234->st_nlink)" ( (binary_expression "1 < local_234->st_nlink" number_literal < (field_expression "local_234->st_nlink" identifier -> field_identifier)) ))) )) (compound_statement "{\n            local_238 = psVar33;\n            cVar13 = same_name(local_200,local_1f8);\n            if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n            bVar32 = local_1f0->move_mode ^ 1;\n            goto LAB_00018431;\n          }" { (expression_statement "local_238 = psVar33;" (assignment_expression "local_238 = psVar33" identifier = identifier) ;) (expression_statement "cVar13 = same_name(local_200,local_1f8);" (assignment_expression "cVar13 = same_name(local_200,local_1f8)" identifier = (call_expression "same_name(local_200,local_1f8)" identifier (argument_list "(local_200,local_1f8)" ( identifier , identifier )))) ;) (if_statement "if ((bool)cVar13) {\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\n              psVar33 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" { (expression_statement "psVar33 = local_238;" (assignment_expression "psVar33 = local_238" identifier = identifier) ;) (if_statement "if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;" if (parenthesized_expression "((local_238->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_238->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_238->st_mode & 0xf000)" ( (binary_expression "local_238->st_mode & 0xf000" (field_expression "local_238->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_0001847d;" goto statement_identifier ;)) (goto_statement "goto LAB_0001849c;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,local_1f0->move_mode)" identifier (argument_list "(local_1f4._1_3_,local_1f0->move_mode)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (field_expression "local_1f0->move_mode" identifier -> field_identifier) ))))) ;) (expression_statement "bVar32 = local_1f0->move_mode ^ 1;" (assignment_expression "bVar32 = local_1f0->move_mode ^ 1" identifier = (binary_expression "local_1f0->move_mode ^ 1" (field_expression "local_1f0->move_mode" identifier -> field_identifier) ^ number_literal)) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) })) (if_statement "if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;" if (parenthesized_expression "((psVar33->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar33->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar33->st_mode & 0xf000)" ( (binary_expression "psVar33->st_mode & 0xf000" (field_expression "psVar33->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000187a8;" goto statement_identifier ;)) (labeled_statement "LAB_000184a6:\n          if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }" statement_identifier : (if_statement "if ((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)) {\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }" if (parenthesized_expression "((((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0))" ( (binary_expression "(((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)" (parenthesized_expression "(((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink))" ( (binary_expression "((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)" (parenthesized_expression "((cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000))" ( (binary_expression "(cVar13 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)" (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((src_sb.st_mode & 0xf000) == 0xa000)" ( (binary_expression "(src_sb.st_mode & 0xf000) == 0xa000" (parenthesized_expression "(src_sb.st_mode & 0xf000)" ( (binary_expression "src_sb.st_mode & 0xf000" (field_expression "src_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) && (parenthesized_expression "(1 < local_234->st_nlink)" ( (binary_expression "1 < local_234->st_nlink" number_literal < (field_expression "local_234->st_nlink" identifier -> field_identifier)) ))) )) && (parenthesized_expression "(local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0)" ( (comma_expression "local_238 = psVar33, pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0" (assignment_expression "local_238 = psVar33" identifier = identifier) , (comma_expression "pcVar18 = canonicalize_file_name(local_200), psVar33 = local_238,\n             pcVar18 != (char *)0x0" (assignment_expression "pcVar18 = canonicalize_file_name(local_200)" identifier = (call_expression "canonicalize_file_name(local_200)" identifier (argument_list "(local_200)" ( identifier )))) , (comma_expression "psVar33 = local_238,\n             pcVar18 != (char *)0x0" (assignment_expression "psVar33 = local_238" identifier = identifier) , (binary_expression "pcVar18 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))))) ))) )) (compound_statement "{\n            _Var12 = same_name(pcVar18,local_1f8);\n            bVar32 = !_Var12;\n            free(pcVar18);\n            cVar13 = false;\n            goto LAB_00018431;\n          }" { (expression_statement "_Var12 = same_name(pcVar18,local_1f8);" (assignment_expression "_Var12 = same_name(pcVar18,local_1f8)" identifier = (call_expression "same_name(pcVar18,local_1f8)" identifier (argument_list "(pcVar18,local_1f8)" ( identifier , identifier )))) ;) (expression_statement "bVar32 = !_Var12;" (assignment_expression "bVar32 = !_Var12" identifier = (unary_expression "!_Var12" ! identifier)) ;) (expression_statement "free(pcVar18);" (call_expression "free(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "cVar13 = false;" (assignment_expression "cVar13 = false" identifier = false) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) }))) }))) (if_statement "if ((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" if (parenthesized_expression "((local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           )" ( (binary_expression "(local_1f0->symbolic_link == false) ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "(local_1f0->symbolic_link == false)" ( (binary_expression "local_1f0->symbolic_link == false" (field_expression "local_1f0->symbolic_link" identifier -> field_identifier) == false) )) || (parenthesized_expression "(local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" ( (comma_expression "local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) , (binary_expression "((uint)local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) != number_literal)) ))) )) (compound_statement "{\n          if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;\n          if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }\n          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" { (if_statement "if (local_1f0->dereference != DEREF_NEVER) goto LAB_00017680;" if (parenthesized_expression "(local_1f0->dereference != DEREF_NEVER)" ( (binary_expression "local_1f0->dereference != DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) != identifier) )) (goto_statement "goto LAB_00017680;" goto statement_identifier ;)) (if_statement "if ((psVar33->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }" if (parenthesized_expression "((psVar33->st_mode & 0xf000) == 0xa000)" ( (binary_expression "(psVar33->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(psVar33->st_mode & 0xf000)" ( (binary_expression "psVar33->st_mode & 0xf000" (field_expression "psVar33->st_mode" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }" { (expression_statement "iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb);" (assignment_expression "iVar17 = __xstat64(3,local_200,(stat64 *)&dst_back_sb)" identifier = (call_expression "__xstat64(3,local_200,(stat64 *)&dst_back_sb)" identifier (argument_list "(3,local_200,(stat64 *)&dst_back_sb)" ( number_literal , identifier , (cast_expression "(stat64 *)&dst_back_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_back_sb" & identifier)) )))) ;) (if_statement "if (iVar17 != 0) goto LAB_00016048;" if (parenthesized_expression "(iVar17 != 0)" ( (binary_expression "iVar17 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) }) (else_clause "else {\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }" else (compound_statement "{\n            psVar20 = &dst_back_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }" { (expression_statement "psVar20 = &dst_back_sb;" (assignment_expression "psVar20 = &dst_back_sb" identifier = (pointer_expression "&dst_back_sb" & identifier)) ;) (for_statement "for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }" for ( (assignment_expression "iVar17 = 0x18" identifier = number_literal) ; (binary_expression "iVar17 != 0" identifier != number_literal) ; (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ) (compound_statement "{\n              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }" { (expression_statement "*(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;" (assignment_expression "*(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev" (pointer_expression "*(char **)&psVar20->st_dev" * (cast_expression "(char **)&psVar20->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&psVar20->st_dev" & (field_expression "psVar20->st_dev" identifier -> field_identifier)))) = (pointer_expression "*(char **)&psVar33->st_dev" * (cast_expression "(char **)&psVar33->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&psVar33->st_dev" & (field_expression "psVar33->st_dev" identifier -> field_identifier))))) ;) (expression_statement "psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);" (assignment_expression "psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar33 + (uint)bVar49 * -8 + 4)" ( (binary_expression "(int)psVar33 + (uint)bVar49 * -8 + 4" (binary_expression "(int)psVar33 + (uint)bVar49 * -8" (cast_expression "(int)psVar33" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar49 * -8" (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);" (assignment_expression "psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4)" identifier = (cast_expression "(stat *)((int)psVar20 + (uint)bVar49 * -8 + 4)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar20 + (uint)bVar49 * -8 + 4)" ( (binary_expression "(int)psVar20 + (uint)bVar49 * -8 + 4" (binary_expression "(int)psVar20 + (uint)bVar49 * -8" (cast_expression "(int)psVar20" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar49 * -8" (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) }))) (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\n            iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);\n            if (iVar17 != 0) goto LAB_00016048;\n          }" { (expression_statement "iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb);" (assignment_expression "iVar17 = __xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb)" identifier = (call_expression "__xstat64(3,local_1f8,(stat64 *)&tmp_dst_sb)" identifier (argument_list "(3,local_1f8,(stat64 *)&tmp_dst_sb)" ( number_literal , identifier , (cast_expression "(stat64 *)&tmp_dst_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&tmp_dst_sb" & identifier)) )))) ;) (if_statement "if (iVar17 != 0) goto LAB_00016048;" if (parenthesized_expression "(iVar17 != 0)" ( (binary_expression "iVar17 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) }) (else_clause "else {\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }" else (compound_statement "{\n            psVar33 = local_234;\n            psVar20 = &tmp_dst_sb;\n            for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }\n          }" { (expression_statement "psVar33 = local_234;" (assignment_expression "psVar33 = local_234" identifier = identifier) ;) (expression_statement "psVar20 = &tmp_dst_sb;" (assignment_expression "psVar20 = &tmp_dst_sb" identifier = (pointer_expression "&tmp_dst_sb" & identifier)) ;) (for_statement "for (iVar17 = 0x18; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }" for ( (assignment_expression "iVar17 = 0x18" identifier = number_literal) ; (binary_expression "iVar17 != 0" identifier != number_literal) ; (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ) (compound_statement "{\n              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n              psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);\n            }" { (expression_statement "*(int *)&psVar20->st_dev = (int)psVar33->st_dev;" (assignment_expression "*(int *)&psVar20->st_dev = (int)psVar33->st_dev" (pointer_expression "*(int *)&psVar20->st_dev" * (cast_expression "(int *)&psVar20->st_dev" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar20->st_dev" & (field_expression "psVar20->st_dev" identifier -> field_identifier)))) = (cast_expression "(int)psVar33->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar33->st_dev" identifier -> field_identifier))) ;) (expression_statement "psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);" (assignment_expression "psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar33 + (uint)bVar49 * -8 + 4)" ( (binary_expression "(int)psVar33 + (uint)bVar49 * -8 + 4" (binary_expression "(int)psVar33 + (uint)bVar49 * -8" (cast_expression "(int)psVar33" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar49 * -8" (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4);" (assignment_expression "psVar20 = (stat *)((int)psVar20 + (uint)bVar49 * -8 + 4)" identifier = (cast_expression "(stat *)((int)psVar20 + (uint)bVar49 * -8 + 4)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar20 + (uint)bVar49 * -8 + 4)" ( (binary_expression "(int)psVar20 + (uint)bVar49 * -8 + 4" (binary_expression "(int)psVar20 + (uint)bVar49 * -8" (cast_expression "(int)psVar20" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar49 * -8" (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) }))) (if_statement "if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)) {\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" if (parenthesized_expression "((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev))" ( (binary_expression "(dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&\n             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)" (parenthesized_expression "(dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino)" ( (binary_expression "dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&\n               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino" (binary_expression "dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_" (field_expression "dst_back_sb.st_ino._4_4_" (field_expression "dst_back_sb.st_ino" identifier . field_identifier) . field_identifier) == (field_expression "tmp_dst_sb.st_ino._4_4_" (field_expression "tmp_dst_sb.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "(char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino" (cast_expression "(char *)dst_back_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "dst_back_sb.st_ino" identifier . field_identifier)) == (cast_expression "(char *)tmp_dst_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "tmp_dst_sb.st_ino" identifier . field_identifier)))) )) && (parenthesized_expression "(dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev)" ( (binary_expression "dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&\n              (stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev" (binary_expression "dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_" (field_expression "dst_back_sb.st_dev._4_4_" (field_expression "dst_back_sb.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "tmp_dst_sb.st_dev._4_4_" (field_expression "tmp_dst_sb.st_dev" identifier . field_identifier) . field_identifier)) && (binary_expression "(stat *)dst_back_sb.st_dev == (stat *)tmp_dst_sb.st_dev" (cast_expression "(stat *)dst_back_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dst_back_sb.st_dev" identifier . field_identifier)) == (cast_expression "(stat *)tmp_dst_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "tmp_dst_sb.st_dev" identifier . field_identifier)))) ))) )) (compound_statement "{\n            if (local_1f0->hard_link == false) goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" { (if_statement "if (local_1f0->hard_link == false) goto LAB_00017680;" if (parenthesized_expression "(local_1f0->hard_link == false)" ( (binary_expression "local_1f0->hard_link == false" (field_expression "local_1f0->hard_link" identifier -> field_identifier) == false) )) (goto_statement "goto LAB_00017680;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" identifier (argument_list "(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (binary_expression "(local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" ( (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) ))))) ;) })) })) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (expression_statement "_Var12 = same_name(local_200,local_1f8);" (assignment_expression "_Var12 = same_name(local_200,local_1f8)" identifier = (call_expression "same_name(local_200,local_1f8)" identifier (argument_list "(local_200,local_1f8)" ( identifier , identifier )))) ;) (if_statement "if (!_Var12) {\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }" if (parenthesized_expression "(!_Var12)" ( (unary_expression "!_Var12" ! identifier) )) (compound_statement "{\n        if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n        cVar13 = true;\n        bVar32 = local_1f0->move_mode ^ 1;\nLAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;\n      }" { (if_statement "if ((local_1f0->backup_type != no_backups) || (!bVar6)) goto LAB_000181e8;" if (parenthesized_expression "((local_1f0->backup_type != no_backups) || (!bVar6))" ( (binary_expression "(local_1f0->backup_type != no_backups) || (!bVar6)" (parenthesized_expression "(local_1f0->backup_type != no_backups)" ( (binary_expression "local_1f0->backup_type != no_backups" (field_expression "local_1f0->backup_type" identifier -> field_identifier) != identifier) )) || (parenthesized_expression "(!bVar6)" ( (unary_expression "!bVar6" ! identifier) ))) )) (goto_statement "goto LAB_000181e8;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,local_1f0->move_mode)" identifier (argument_list "(local_1f4._1_3_,local_1f0->move_mode)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (field_expression "local_1f0->move_mode" identifier -> field_identifier) ))))) ;) (expression_statement "cVar13 = true;" (assignment_expression "cVar13 = true" identifier = true) ;) (expression_statement "bVar32 = local_1f0->move_mode ^ 1;" (assignment_expression "bVar32 = local_1f0->move_mode ^ 1" identifier = (binary_expression "local_1f0->move_mode ^ 1" (field_expression "local_1f0->move_mode" identifier -> field_identifier) ^ number_literal)) ;) (labeled_statement "LAB_00018431:\n        if (bVar32 != 0) goto LAB_00018440;" statement_identifier : (if_statement "if (bVar32 != 0) goto LAB_00018440;" if (parenthesized_expression "(bVar32 != 0)" ( (binary_expression "bVar32 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00018440;" goto statement_identifier ;))) })) (labeled_statement "LAB_00017680:\n      quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);" statement_identifier : (expression_statement "quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_n_style(1,shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(1,shell_escape_always_quoting_style,local_1f8)" ( number_literal , identifier , identifier ))) ;)) (expression_statement "quotearg_n_style(0,shell_escape_always_quoting_style,local_200);" (call_expression "quotearg_n_style(0,shell_escape_always_quoting_style,local_200)" identifier (argument_list "(0,shell_escape_always_quoting_style,local_200)" ( number_literal , identifier , identifier ))) ;) (labeled_statement "LAB_000176b3:\n      uVar19 = dcgettext();" statement_identifier : (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;)) (goto_statement "goto LAB_000176c0;" goto statement_identifier ;) })) (expression_statement "local_230 = (Hash_table *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (Hash_table *)((uint)local_230 & 0xffffff00)" identifier = (cast_expression "(Hash_table *)((uint)local_230 & 0xffffff00)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230 & 0xffffff00)" ( (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "local_214 = (stat *)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (stat *)((uint)local_214._1_3_ << 8)" identifier = (cast_expression "(stat *)((uint)local_214._1_3_ << 8)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_214._1_3_ << 8)" ( (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_214._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (labeled_statement "LAB_00016048:\n    if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }" statement_identifier : (if_statement "if (local_1f0->update == false) {\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }" if (parenthesized_expression "(local_1f0->update == false)" ( (binary_expression "local_1f0->update == false" (field_expression "local_1f0->update" identifier -> field_identifier) == false) )) (compound_statement "{\n      if (local_1f0->move_mode != false) goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar39 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      poVar36 = (off_t *)puVar39;\n      bVar32 = 1;\n      goto LAB_0001614a;\n    }" { (if_statement "if (local_1f0->move_mode != false) goto LAB_00017420;" if (parenthesized_expression "(local_1f0->move_mode != false)" ( (binary_expression "local_1f0->move_mode != false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) != false) )) (goto_statement "goto LAB_00017420;" goto statement_identifier ;)) (if_statement "if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }" if (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00016ca2:\n        puVar39 = auStack_28c;\n        if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;\n      }" { (labeled_statement "LAB_00016ca2:\n        puVar39 = auStack_28c;" statement_identifier : (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;)) (if_statement "if ((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))) goto LAB_00016570;" if (parenthesized_expression "((local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12))))" ( (binary_expression "(local_1f0->interactive == I_ALWAYS_NO) ||\n           ((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))" (parenthesized_expression "(local_1f0->interactive == I_ALWAYS_NO)" ( (binary_expression "local_1f0->interactive == I_ALWAYS_NO" (field_expression "local_1f0->interactive" identifier -> field_identifier) == identifier) )) || (parenthesized_expression "((local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)))" ( (parenthesized_expression "(local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12))" ( (binary_expression "local_1f0->interactive == I_ASK_USER &&\n            (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)" (binary_expression "local_1f0->interactive == I_ASK_USER" (field_expression "local_1f0->interactive" identifier -> field_identifier) == identifier) && (parenthesized_expression "(_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12)" ( (comma_expression "_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode),\n            puVar39 = auStack_28c, !_Var12" (assignment_expression "_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode)" identifier = (call_expression "overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode)" identifier (argument_list "(local_1f0,local_1f8,(stat *)&dst_sb.st_mode)" ( identifier , identifier , (cast_expression "(stat *)&dst_sb.st_mode" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_sb.st_mode" & (field_expression "dst_sb.st_mode" identifier . field_identifier))) )))) , (comma_expression "puVar39 = auStack_28c, !_Var12" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) , (unary_expression "!_Var12" ! identifier))) ))) )) ))) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) })) (labeled_statement "LAB_00016cbd:\n      puVar39 = auStack_28c;" statement_identifier : (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;)) (if_statement "if ((byte)local_1f4 == '\0') {\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar16 = local_204 & 0xf000;\n        if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        bVar45 = local_1f0->backup_type;\nLAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar50 = false;\n        if (bVar45 != no_backups) goto LAB_00018700;\nLAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;\n        iVar17 = unlink(local_1f8);\n        if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);\n        if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar17 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (Hash_table *)0x0;\n        poVar36 = (off_t *)auStack_28c;\n        goto LAB_00016356;\n      }" { (expression_statement "uVar16 = local_204 & 0xf000;" (assignment_expression "uVar16 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if ((dst_sb.st_mode & 0xf000) != 0x4000) {\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }" if (parenthesized_expression "((dst_sb.st_mode & 0xf000) != 0x4000)" ( (binary_expression "(dst_sb.st_mode & 0xf000) != 0x4000" (parenthesized_expression "(dst_sb.st_mode & 0xf000)" ( (binary_expression "dst_sb.st_mode & 0xf000" (field_expression "dst_sb.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          bVar44 = local_1f0->backup_type;\n          bVar45 = bVar44;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          bVar44 = numbered_backups;\n          bVar45 = numbered_backups;\n          if (local_1f0->move_mode != false) goto LAB_00017827;\nLAB_00018700:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }\n          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }\n          pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);\n          local_230 = pHVar23;\n          if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }\n          goto LAB_00016259;\n        }" { (if_statement "if (uVar16 == 0x4000) {\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" if (parenthesized_expression "(uVar16 == 0x4000)" ( (binary_expression "uVar16 == 0x4000" identifier == number_literal) )) (compound_statement "{\n            if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" { (if_statement "if ((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "((local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups))" ( (binary_expression "(local_1f0->move_mode == false) ||\n               (bVar44 = local_1f0->backup_type, bVar44 == no_backups)" (parenthesized_expression "(local_1f0->move_mode == false)" ( (binary_expression "local_1f0->move_mode == false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) == false) )) || (parenthesized_expression "(bVar44 = local_1f0->backup_type, bVar44 == no_backups)" ( (comma_expression "bVar44 = local_1f0->backup_type, bVar44 == no_backups" (assignment_expression "bVar44 = local_1f0->backup_type" identifier = (field_expression "local_1f0->backup_type" identifier -> field_identifier)) , (binary_expression "bVar44 == no_backups" identifier == identifier)) ))) )) (compound_statement "{\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }" { (expression_statement "quotearg_n_style(1,shell_escape_always_quoting_style,local_200);" (call_expression "quotearg_n_style(1,shell_escape_always_quoting_style,local_200)" identifier (argument_list "(1,shell_escape_always_quoting_style,local_200)" ( number_literal , identifier , identifier ))) ;) (expression_statement "quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(0,shell_escape_always_quoting_style,local_1f8)" ( number_literal , identifier , identifier ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) (if_statement "if ((byte)local_1fc != '\0') goto LAB_00016d0d;" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016d0d;" goto statement_identifier ;)) (goto_statement "goto LAB_00017827;" goto statement_identifier ;) })) (expression_statement "bVar44 = local_1f0->backup_type;" (assignment_expression "bVar44 = local_1f0->backup_type" identifier = (field_expression "local_1f0->backup_type" identifier -> field_identifier)) ;) (expression_statement "bVar45 = bVar44;" (assignment_expression "bVar45 = bVar44" identifier = identifier) ;) (if_statement "if ((byte)local_1fc == '\0') goto LAB_00016d69;" if (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016d69;" goto statement_identifier ;)) (labeled_statement "LAB_00016d0d:\n          if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" statement_identifier : (if_statement "if (bVar44 != numbered_backups) {\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" if (parenthesized_expression "(bVar44 != numbered_backups)" ( (binary_expression "bVar44 != numbered_backups" identifier != identifier) )) (compound_statement "{\n            _Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);\n            if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }\n            if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" { (expression_statement "_Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb);" (assignment_expression "_Var12 = seen_file(local_1f0->dest_info,local_1f8,&dst_sb)" identifier = (call_expression "seen_file(local_1f0->dest_info,local_1f8,&dst_sb)" identifier (argument_list "(local_1f0->dest_info,local_1f8,&dst_sb)" ( (field_expression "local_1f0->dest_info" identifier -> field_identifier) , identifier , (pointer_expression "&dst_sb" & identifier) )))) ;) (if_statement "if (_Var12) {\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(_Var12)" ( identifier )) (compound_statement "{\n              quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n              quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\n              goto LAB_000176b3;\n            }" { (expression_statement "quotearg_n_style(1,shell_escape_always_quoting_style,local_200);" (call_expression "quotearg_n_style(1,shell_escape_always_quoting_style,local_200)" identifier (argument_list "(1,shell_escape_always_quoting_style,local_200)" ( number_literal , identifier , identifier ))) ;) (expression_statement "quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(0,shell_escape_always_quoting_style,local_1f8)" ( number_literal , identifier , identifier ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) (if_statement "if ((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;" if (parenthesized_expression "((uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000))" ( (binary_expression "(uVar16 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "(uVar16 != 0x4000)" ( (binary_expression "uVar16 != 0x4000" identifier != number_literal) )) && (parenthesized_expression "((dst_sb.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(dst_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(dst_sb.st_mode & 0xf000)" ( (binary_expression "dst_sb.st_mode & 0xf000" (field_expression "dst_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_0001828c;" goto statement_identifier ;)) (goto_statement "goto LAB_00016d61;" goto statement_identifier ;) }))) (expression_statement "bVar44 = numbered_backups;" (assignment_expression "bVar44 = numbered_backups" identifier = identifier) ;) (expression_statement "bVar45 = numbered_backups;" (assignment_expression "bVar45 = numbered_backups" identifier = identifier) ;) (if_statement "if (local_1f0->move_mode != false) goto LAB_00017827;" if (parenthesized_expression "(local_1f0->move_mode != false)" ( (binary_expression "local_1f0->move_mode != false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) != false) )) (goto_statement "goto LAB_00017827;" goto statement_identifier ;)) (labeled_statement "LAB_00018700:\n          pcVar18 = last_component(local_200);" statement_identifier : (expression_statement "pcVar18 = last_component(local_200);" (assignment_expression "pcVar18 = last_component(local_200)" identifier = (call_expression "last_component(local_200)" identifier (argument_list "(local_200)" ( identifier )))) ;)) (if_statement "if (*pcVar18 == '.') {\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }" if (parenthesized_expression "(*pcVar18 == '.')" ( (binary_expression "*pcVar18 == '.'" (pointer_expression "*pcVar18" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n            bVar50 = false;\nLAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar50) goto LAB_0001785b;\n          }" { (expression_statement "bVar50 = false;" (assignment_expression "bVar50 = false" identifier = false) ;) (labeled_statement "LAB_00018ca5:\n            if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;" statement_identifier : (if_statement "if ((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')) goto LAB_00016d83;" if (parenthesized_expression "((pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/'))" ( (binary_expression "(pcVar18[(pcVar18[1] == '.') + 1] == '\0') ||\n               (pcVar18[(pcVar18[1] == '.') + 1] == '/')" (parenthesized_expression "(pcVar18[(pcVar18[1] == '.') + 1] == '\0')" ( (binary_expression "pcVar18[(pcVar18[1] == '.') + 1] == '\0'" (subscript_expression "pcVar18[(pcVar18[1] == '.') + 1]" identifier [ (binary_expression "(pcVar18[1] == '.') + 1" (parenthesized_expression "(pcVar18[1] == '.')" ( (binary_expression "pcVar18[1] == '.'" (subscript_expression "pcVar18[1]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) + number_literal) ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(pcVar18[(pcVar18[1] == '.') + 1] == '/')" ( (binary_expression "pcVar18[(pcVar18[1] == '.') + 1] == '/'" (subscript_expression "pcVar18[(pcVar18[1] == '.') + 1]" identifier [ (binary_expression "(pcVar18[1] == '.') + 1" (parenthesized_expression "(pcVar18[1] == '.')" ( (binary_expression "pcVar18[1] == '.'" (subscript_expression "pcVar18[1]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) + number_literal) ]) == (char_literal "'/'" ' character ')) ))) )) (goto_statement "goto LAB_00016d83;" goto statement_identifier ;))) (if_statement "if (bVar50) goto LAB_0001785b;" if (parenthesized_expression "(bVar50)" ( identifier )) (goto_statement "goto LAB_0001785b;" goto statement_identifier ;)) })) (if_statement "if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;" if (parenthesized_expression "((dst_sb.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(dst_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(dst_sb.st_mode & 0xf000)" ( (binary_expression "dst_sb.st_mode & 0xf000" (field_expression "dst_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00016da2;" goto statement_identifier ;)) (labeled_statement "LAB_0001785b:\n          if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }" statement_identifier : (if_statement "if (bVar45 != numbered_backups) {\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }" if (parenthesized_expression "(bVar45 != numbered_backups)" ( (binary_expression "bVar45 != numbered_backups" identifier != identifier) )) (compound_statement "{\n            local_230 = (Hash_table *)strlen(pcVar18);\n            local_234 = (stat64 *)last_component(local_1f8);\n            sVar24 = strlen((char *)local_234);\n            local_238 = (stat64 *)&simple_backup_suffix;\n            local_1f4 = simple_backup_suffix;\n            local_23c = strlen(simple_backup_suffix);\n            if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }\n          }" { (expression_statement "local_230 = (Hash_table *)strlen(pcVar18);" (assignment_expression "local_230 = (Hash_table *)strlen(pcVar18)" identifier = (cast_expression "(Hash_table *)strlen(pcVar18)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "strlen(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))))) ;) (expression_statement "local_234 = (stat64 *)last_component(local_1f8);" (assignment_expression "local_234 = (stat64 *)last_component(local_1f8)" identifier = (cast_expression "(stat64 *)last_component(local_1f8)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "last_component(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier ))))) ;) (expression_statement "sVar24 = strlen((char *)local_234);" (assignment_expression "sVar24 = strlen((char *)local_234)" identifier = (call_expression "strlen((char *)local_234)" identifier (argument_list "((char *)local_234)" ( (cast_expression "(char *)local_234" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_238 = (stat64 *)&simple_backup_suffix;" (assignment_expression "local_238 = (stat64 *)&simple_backup_suffix" identifier = (cast_expression "(stat64 *)&simple_backup_suffix" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&simple_backup_suffix" & identifier))) ;) (expression_statement "local_1f4 = simple_backup_suffix;" (assignment_expression "local_1f4 = simple_backup_suffix" identifier = identifier) ;) (expression_statement "local_23c = strlen(simple_backup_suffix);" (assignment_expression "local_23c = strlen(simple_backup_suffix)" identifier = (call_expression "strlen(simple_backup_suffix)" identifier (argument_list "(simple_backup_suffix)" ( identifier )))) ;) (if_statement "if (((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)) {\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }" if (parenthesized_expression "(((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0))" ( (binary_expression "((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)) &&\n               (iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)" (parenthesized_expression "((local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0))" ( (binary_expression "(local_230 == (Hash_table *)(local_23c + sVar24)) &&\n                (iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)" (parenthesized_expression "(local_230 == (Hash_table *)(local_23c + sVar24))" ( (binary_expression "local_230 == (Hash_table *)(local_23c + sVar24)" identifier == (cast_expression "(Hash_table *)(local_23c + sVar24)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_23c + sVar24)" ( (binary_expression "local_23c + sVar24" identifier + identifier) )))) )) && (parenthesized_expression "(iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0)" ( (comma_expression "iVar17 = memcmp(pcVar18,local_234,sVar24), iVar17 == 0" (assignment_expression "iVar17 = memcmp(pcVar18,local_234,sVar24)" identifier = (call_expression "memcmp(pcVar18,local_234,sVar24)" identifier (argument_list "(pcVar18,local_234,sVar24)" ( identifier , identifier , identifier )))) , (binary_expression "iVar17 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0)" ( (comma_expression "iVar17 = strcmp(pcVar18 + sVar24,local_1f4), iVar17 == 0" (assignment_expression "iVar17 = strcmp(pcVar18 + sVar24,local_1f4)" identifier = (call_expression "strcmp(pcVar18 + sVar24,local_1f4)" identifier (argument_list "(pcVar18 + sVar24,local_1f4)" ( (binary_expression "pcVar18 + sVar24" identifier + identifier) , identifier )))) , (binary_expression "iVar17 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n              sVar24 = strlen(local_1f8);\n              pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);\n              strcpy(pcVar22,local_1f4);\n              iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);\n              free(pcVar18);\n              if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }\n            }" { (expression_statement "sVar24 = strlen(local_1f8);" (assignment_expression "sVar24 = strlen(local_1f8)" identifier = (call_expression "strlen(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier )))) ;) (expression_statement "pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24);" (assignment_expression "pcVar18 = (char *)xmalloc(local_23c + 1 + sVar24)" identifier = (cast_expression "(char *)xmalloc(local_23c + 1 + sVar24)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(local_23c + 1 + sVar24)" identifier (argument_list "(local_23c + 1 + sVar24)" ( (binary_expression "local_23c + 1 + sVar24" (binary_expression "local_23c + 1" identifier + number_literal) + identifier) ))))) ;) (expression_statement "local_1f4 = *(char **)&local_238->st_dev;" (assignment_expression "local_1f4 = *(char **)&local_238->st_dev" identifier = (pointer_expression "*(char **)&local_238->st_dev" * (cast_expression "(char **)&local_238->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier))))) ;) (expression_statement "pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24);" (assignment_expression "pcVar22 = (char *)mempcpy(pcVar18,local_1f8,sVar24)" identifier = (cast_expression "(char *)mempcpy(pcVar18,local_1f8,sVar24)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "mempcpy(pcVar18,local_1f8,sVar24)" identifier (argument_list "(pcVar18,local_1f8,sVar24)" ( identifier , identifier , identifier ))))) ;) (expression_statement "strcpy(pcVar22,local_1f4);" (call_expression "strcpy(pcVar22,local_1f4)" identifier (argument_list "(pcVar22,local_1f4)" ( identifier , identifier ))) ;) (expression_statement "iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb);" (assignment_expression "iVar17 = __xstat64(3,pcVar18,(stat64 *)&dst_back_sb)" identifier = (call_expression "__xstat64(3,pcVar18,(stat64 *)&dst_back_sb)" identifier (argument_list "(3,pcVar18,(stat64 *)&dst_back_sb)" ( number_literal , identifier , (cast_expression "(stat64 *)&dst_back_sb" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_back_sb" & identifier)) )))) ;) (expression_statement "free(pcVar18);" (call_expression "free(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (if_statement "if (((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))) {\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }" if (parenthesized_expression "(((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev))))" ( (binary_expression "((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&\n                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))" (parenthesized_expression "((iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino))" ( (binary_expression "(iVar17 == 0) &&\n                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)" (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) && (parenthesized_expression "(src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)" ( (binary_expression "src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&\n                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino" (binary_expression "src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_" (field_expression "src_sb.st_ino._4_4_" (field_expression "src_sb.st_ino" identifier . field_identifier) . field_identifier) == (field_expression "dst_back_sb.st_ino._4_4_" (field_expression "dst_back_sb.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "(char *)src_sb.st_ino == (char *)dst_back_sb.st_ino" (cast_expression "(char *)src_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_ino" identifier . field_identifier)) == (cast_expression "(char *)dst_back_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "dst_back_sb.st_ino" identifier . field_identifier)))) ))) )) && (parenthesized_expression "((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)))" ( (parenthesized_expression "(src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev))" ( (binary_expression "src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&\n                  ((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)" (binary_expression "src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_" (field_expression "src_sb.st_dev._4_4_" (field_expression "src_sb.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "dst_back_sb.st_dev._4_4_" (field_expression "dst_back_sb.st_dev" identifier . field_identifier) . field_identifier)) && (parenthesized_expression "((stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev)" ( (binary_expression "(stat *)src_sb.st_dev == (stat *)dst_back_sb.st_dev" (cast_expression "(stat *)src_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_dev" identifier . field_identifier)) == (cast_expression "(stat *)dst_back_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dst_back_sb.st_dev" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                uVar19 = dcgettext();\n                quotearg_n_style(1,shell_escape_always_quoting_style,local_200);\n                quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);\nLAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);\n              }" { (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "quotearg_n_style(1,shell_escape_always_quoting_style,local_200);" (call_expression "quotearg_n_style(1,shell_escape_always_quoting_style,local_200)" identifier (argument_list "(1,shell_escape_always_quoting_style,local_200)" ( number_literal , identifier , identifier ))) ;) (expression_statement "quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_n_style(0,shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(0,shell_escape_always_quoting_style,local_1f8)" ( number_literal , identifier , identifier ))) ;) (labeled_statement "LAB_000176c0:\n                    /* WARNING: Subroutine does not return */\n                error(0,0,uVar19);" statement_identifier : comment (expression_statement "error(0,0,uVar19);" (call_expression "error(0,0,uVar19)" identifier (argument_list "(0,0,uVar19)" ( number_literal , number_literal , identifier ))) ;)) })) })) }))) (expression_statement "pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type);" (assignment_expression "pHVar23 = (Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type)" identifier = (cast_expression "(Hash_table *)backup_file_rename(local_1f8,local_1f0->backup_type)" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "backup_file_rename(local_1f8,local_1f0->backup_type)" identifier (argument_list "(local_1f8,local_1f0->backup_type)" ( identifier , (field_expression "local_1f0->backup_type" identifier -> field_identifier) ))))) ;) (expression_statement "local_230 = pHVar23;" (assignment_expression "local_230 = pHVar23" identifier = identifier) ;) (if_statement "if (pHVar23 == (Hash_table *)0x0) {\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }\n          else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }" if (parenthesized_expression "(pHVar23 == (Hash_table *)0x0)" ( (binary_expression "pHVar23 == (Hash_table *)0x0" identifier == (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            piVar21 = __errno_location();\n            iVar17 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c;\n            if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }\n          }" { (expression_statement "piVar21 = __errno_location();" (assignment_expression "piVar21 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (if_statement "if (*piVar21 != 2) {\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }" if (parenthesized_expression "(*piVar21 != 2)" ( (binary_expression "*piVar21 != 2" (pointer_expression "*piVar21" * identifier) != number_literal) )) (compound_statement "{\n              quotearg_style(shell_escape_always_quoting_style,local_1f8);\n              uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n              error(0,*piVar21,uVar19);\n            }" { (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(shell_escape_always_quoting_style,local_1f8)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,*piVar21,uVar19);" (call_expression "error(0,*piVar21,uVar19)" identifier (argument_list "(0,*piVar21,uVar19)" ( number_literal , (pointer_expression "*piVar21" * identifier) , identifier ))) ;) })) }) (else_clause "else {\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }" else (compound_statement "{\n            sVar24 = strlen((char *)pHVar23);\n            iVar15 = -(sVar24 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;\n            *(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;\n            *(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;\n            pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));\n            *(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;\n            iVar17 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar15));\n            local_230 = pHVar25;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar39 = auStack_28c + iVar15;\n          }" { (expression_statement "sVar24 = strlen((char *)pHVar23);" (assignment_expression "sVar24 = strlen((char *)pHVar23)" identifier = (call_expression "strlen((char *)pHVar23)" identifier (argument_list "((char *)pHVar23)" ( (cast_expression "(char *)pHVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "iVar15 = -(sVar24 + 0x1c & 0xfffffff0);" (assignment_expression "iVar15 = -(sVar24 + 0x1c & 0xfffffff0)" identifier = (unary_expression "-(sVar24 + 0x1c & 0xfffffff0)" - (parenthesized_expression "(sVar24 + 0x1c & 0xfffffff0)" ( (binary_expression "sVar24 + 0x1c & 0xfffffff0" (binary_expression "sVar24 + 0x1c" identifier + number_literal) & number_literal) )))) ;) (expression_statement "*(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1;" (assignment_expression "*(size_t *)(&stack0xfffffd6c + iVar15) = sVar24 + 1" (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar15)" * (cast_expression "(size_t *)(&stack0xfffffd6c + iVar15)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd6c + iVar15)" ( (binary_expression "&stack0xfffffd6c + iVar15" (pointer_expression "&stack0xfffffd6c" & identifier) + identifier) )))) = (binary_expression "sVar24 + 1" identifier + number_literal)) ;) (expression_statement "*(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23;" (assignment_expression "*(Hash_table **)(&stack0xfffffd68 + iVar15) = pHVar23" (pointer_expression "*(Hash_table **)(&stack0xfffffd68 + iVar15)" * (cast_expression "(Hash_table **)(&stack0xfffffd68 + iVar15)" ( (type_descriptor "Hash_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd68 + iVar15)" ( (binary_expression "&stack0xfffffd68 + iVar15" (pointer_expression "&stack0xfffffd68" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15;" (assignment_expression "*(int *)(&stack0xfffffd64 + iVar15) = (int)&local_280 + iVar15" (pointer_expression "*(int *)(&stack0xfffffd64 + iVar15)" * (cast_expression "(int *)(&stack0xfffffd64 + iVar15)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd64 + iVar15)" ( (binary_expression "&stack0xfffffd64 + iVar15" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) = (binary_expression "(int)&local_280 + iVar15" (cast_expression "(int)&local_280" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_280" & identifier)) + identifier)) ;) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179e2" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar15)" * (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar15)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd60 + iVar15)" ( (binary_expression "&stack0xfffffd60 + iVar15" (pointer_expression "&stack0xfffffd60" & identifier) + identifier) )))) = number_literal) ;) (expression_statement "pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15));" (assignment_expression "pHVar25 = (Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15))" identifier = (cast_expression "(Hash_table *)\n                      memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15))" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "memcpy(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15))" identifier (argument_list "(*(void **)(&stack0xfffffd64 + iVar15),\n                             *(void **)(&stack0xfffffd68 + iVar15),\n                             *(size_t *)(&stack0xfffffd6c + iVar15))" ( (pointer_expression "*(void **)(&stack0xfffffd64 + iVar15)" * (cast_expression "(void **)(&stack0xfffffd64 + iVar15)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar15)" ( (binary_expression "&stack0xfffffd64 + iVar15" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) , (pointer_expression "*(void **)(&stack0xfffffd68 + iVar15)" * (cast_expression "(void **)(&stack0xfffffd68 + iVar15)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd68 + iVar15)" ( (binary_expression "&stack0xfffffd68 + iVar15" (pointer_expression "&stack0xfffffd68" & identifier) + identifier) )))) , (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar15)" * (cast_expression "(size_t *)(&stack0xfffffd6c + iVar15)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd6c + iVar15)" ( (binary_expression "&stack0xfffffd6c + iVar15" (pointer_expression "&stack0xfffffd6c" & identifier) + identifier) )))) ))))) ;) (expression_statement "*(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23;" (assignment_expression "*(Hash_table **)(&stack0xfffffd64 + iVar15) = pHVar23" (pointer_expression "*(Hash_table **)(&stack0xfffffd64 + iVar15)" * (cast_expression "(Hash_table **)(&stack0xfffffd64 + iVar15)" ( (type_descriptor "Hash_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar15)" ( (binary_expression "&stack0xfffffd64 + iVar15" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) = identifier) ;) (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar15) = 0x179f1" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar15)" * (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar15)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd60 + iVar15)" ( (binary_expression "&stack0xfffffd60 + iVar15" (pointer_expression "&stack0xfffffd60" & identifier) + identifier) )))) = number_literal) ;) (expression_statement "free(*(void **)(&stack0xfffffd64 + iVar15));" (call_expression "free(*(void **)(&stack0xfffffd64 + iVar15))" identifier (argument_list "(*(void **)(&stack0xfffffd64 + iVar15))" ( (pointer_expression "*(void **)(&stack0xfffffd64 + iVar15)" * (cast_expression "(void **)(&stack0xfffffd64 + iVar15)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar15)" ( (binary_expression "&stack0xfffffd64 + iVar15" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) ))) ;) (expression_statement "local_230 = pHVar25;" (assignment_expression "local_230 = pHVar25" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "puVar39 = auStack_28c + iVar15;" (assignment_expression "puVar39 = auStack_28c + iVar15" identifier = (binary_expression "auStack_28c + iVar15" identifier + identifier)) ;) }))) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) (if_statement "if (uVar16 != 0x4000) {\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" if (parenthesized_expression "(uVar16 != 0x4000)" ( (binary_expression "uVar16 != 0x4000" identifier != number_literal) )) (compound_statement "{\nLAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }\nLAB_00017827:\n          bVar45 = bVar44;\n          if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar18 = last_component(local_200);\n          if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" { (labeled_statement "LAB_0001828c:\n          if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }" statement_identifier : (if_statement "if ((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)) {\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }" if (parenthesized_expression "((local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups))" ( (binary_expression "(local_1f0->move_mode == false) ||\n             (bVar44 = local_1f0->backup_type, bVar44 == no_backups)" (parenthesized_expression "(local_1f0->move_mode == false)" ( (binary_expression "local_1f0->move_mode == false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) == false) )) || (parenthesized_expression "(bVar44 = local_1f0->backup_type, bVar44 == no_backups)" ( (comma_expression "bVar44 = local_1f0->backup_type, bVar44 == no_backups" (assignment_expression "bVar44 = local_1f0->backup_type" identifier = (field_expression "local_1f0->backup_type" identifier -> field_identifier)) , (binary_expression "bVar44 == no_backups" identifier == identifier)) ))) )) (compound_statement "{\n            quotearg_style(shell_escape_always_quoting_style,local_1f8);\n            uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n            error(0,0,uVar19);\n          }" { (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(shell_escape_always_quoting_style,local_1f8)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,0,uVar19);" (call_expression "error(0,0,uVar19)" identifier (argument_list "(0,0,uVar19)" ( number_literal , number_literal , identifier ))) ;) }))) (labeled_statement "LAB_00017827:\n          bVar45 = bVar44;" statement_identifier : (expression_statement "bVar45 = bVar44;" (assignment_expression "bVar45 = bVar44" identifier = identifier) ;)) (if_statement "if ((src_sb.st_mode & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }" if (parenthesized_expression "((src_sb.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(src_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(src_sb.st_mode & 0xf000)" ( (binary_expression "src_sb.st_mode & 0xf000" (field_expression "src_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }\n          }" { (labeled_statement "LAB_0001892a:\n            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" statement_identifier : (if_statement "if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" if (parenthesized_expression "((dst_sb.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(dst_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(dst_sb.st_mode & 0xf000)" ( (binary_expression "dst_sb.st_mode & 0xf000" (field_expression "dst_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00018756;" goto statement_identifier ;))) (if_statement "if (bVar45 == no_backups) {\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(bVar45 == no_backups)" ( (binary_expression "bVar45 == no_backups" identifier == identifier) )) (compound_statement "{\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);\n              quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);\n              goto LAB_000176b3;\n            }" { (expression_statement "quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8);" (call_expression "quotearg_n_style_colon(0,shell_escape_quoting_style,local_1f8)" identifier (argument_list "(0,shell_escape_quoting_style,local_1f8)" ( number_literal , identifier , identifier ))) ;) (expression_statement "quotearg_n_style_colon(0,shell_escape_quoting_style,local_200);" (call_expression "quotearg_n_style_colon(0,shell_escape_quoting_style,local_200)" identifier (argument_list "(0,shell_escape_quoting_style,local_200)" ( number_literal , identifier , identifier ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) })) (labeled_statement "LAB_0001783f:\n          pcVar18 = last_component(local_200);" statement_identifier : (expression_statement "pcVar18 = last_component(local_200);" (assignment_expression "pcVar18 = last_component(local_200)" identifier = (call_expression "last_component(local_200)" identifier (argument_list "(local_200)" ( identifier )))) ;)) (if_statement "if (*pcVar18 == '.') {\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }" if (parenthesized_expression "(*pcVar18 == '.')" ( (binary_expression "*pcVar18 == '.'" (pointer_expression "*pcVar18" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n            bVar50 = true;\n            goto LAB_00018ca5;\n          }" { (expression_statement "bVar50 = true;" (assignment_expression "bVar50 = true" identifier = true) ;) (goto_statement "goto LAB_00018ca5;" goto statement_identifier ;) })) (goto_statement "goto LAB_0001785b;" goto statement_identifier ;) })) (labeled_statement "LAB_00016d61:\n        bVar45 = local_1f0->backup_type;" statement_identifier : (expression_statement "bVar45 = local_1f0->backup_type;" (assignment_expression "bVar45 = local_1f0->backup_type" identifier = (field_expression "local_1f0->backup_type" identifier -> field_identifier)) ;)) (labeled_statement "LAB_00016d69:\n        if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" statement_identifier : (if_statement "if (local_1f0->move_mode != false) {\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(local_1f0->move_mode != false)" ( (binary_expression "local_1f0->move_mode != false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) != false) )) (compound_statement "{\n          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;\nLAB_00016da2:\n          uVar47 = local_230._0_1_;\n          iVar17 = 0x11;\n          local_230 = (Hash_table *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" { (if_statement "if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;" if (parenthesized_expression "((src_sb.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(src_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(src_sb.st_mode & 0xf000)" ( (binary_expression "src_sb.st_mode & 0xf000" (field_expression "src_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0001892a;" goto statement_identifier ;)) (labeled_statement "LAB_00018756:\n          if (bVar45 != no_backups) goto LAB_0001783f;" statement_identifier : (if_statement "if (bVar45 != no_backups) goto LAB_0001783f;" if (parenthesized_expression "(bVar45 != no_backups)" ( (binary_expression "bVar45 != no_backups" identifier != identifier) )) (goto_statement "goto LAB_0001783f;" goto statement_identifier ;))) (labeled_statement "LAB_00016da2:\n          uVar47 = local_230._0_1_;" statement_identifier : (expression_statement "uVar47 = local_230._0_1_;" (assignment_expression "uVar47 = local_230._0_1_" identifier = (field_expression "local_230._0_1_" identifier . field_identifier)) ;)) (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (expression_statement "local_230 = (Hash_table *)0x0;" (assignment_expression "local_230 = (Hash_table *)0x0" identifier = (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar47)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar47)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,uVar47)" identifier (argument_list "(local_1f4._1_3_,uVar47)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) }))) (expression_statement "bVar50 = false;" (assignment_expression "bVar50 = false" identifier = false) ;) (if_statement "if (bVar45 != no_backups) goto LAB_00018700;" if (parenthesized_expression "(bVar45 != no_backups)" ( (binary_expression "bVar45 != no_backups" identifier != identifier) )) (goto_statement "goto LAB_00018700;" goto statement_identifier ;)) (labeled_statement "LAB_00016d83:\n        if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;" statement_identifier : (if_statement "if (((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))\n        goto LAB_00016da2;" if (parenthesized_expression "(((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))))" ( (binary_expression "((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50) ||\n           (((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000)))))" (parenthesized_expression "((dst_sb.st_mode & 0xf000) == 0x4000 || bVar50)" ( (binary_expression "(dst_sb.st_mode & 0xf000) == 0x4000 || bVar50" (binary_expression "(dst_sb.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(dst_sb.st_mode & 0xf000)" ( (binary_expression "dst_sb.st_mode & 0xf000" (field_expression "dst_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) || identifier) )) || (parenthesized_expression "(((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000)))))" ( (parenthesized_expression "((local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))))" ( (binary_expression "(local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&\n            ((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000)))" (parenthesized_expression "(local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2))))" ( (binary_expression "local_1f0->unlink_dest_before_opening == false &&\n             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))" (binary_expression "local_1f0->unlink_dest_before_opening == false" (field_expression "local_1f0->unlink_dest_before_opening" identifier -> field_identifier) == false) && (parenthesized_expression "((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))" ( (parenthesized_expression "(local_1f0->preserve_links == false || (dst_sb.st_nlink < 2))" ( (binary_expression "local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)" (binary_expression "local_1f0->preserve_links == false" (field_expression "local_1f0->preserve_links" identifier -> field_identifier) == false) || (parenthesized_expression "(dst_sb.st_nlink < 2)" ( (binary_expression "dst_sb.st_nlink < 2" (field_expression "dst_sb.st_nlink" identifier . field_identifier) < number_literal) ))) )) ))) )) && (parenthesized_expression "((local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000)))" ( (parenthesized_expression "(local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000))" ( (binary_expression "local_1f0->dereference != DEREF_NEVER || ((src_sb.st_mode & 0xf000) == 0x8000)" (binary_expression "local_1f0->dereference != DEREF_NEVER" (field_expression "local_1f0->dereference" identifier -> field_identifier) != identifier) || (parenthesized_expression "((src_sb.st_mode & 0xf000) == 0x8000)" ( (binary_expression "(src_sb.st_mode & 0xf000) == 0x8000" (parenthesized_expression "(src_sb.st_mode & 0xf000)" ( (binary_expression "src_sb.st_mode & 0xf000" (field_expression "src_sb.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) ))) )) ))) )) (goto_statement "goto LAB_00016da2;" goto statement_identifier ;))) (expression_statement "iVar17 = unlink(local_1f8);" (assignment_expression "iVar17 = unlink(local_1f8)" identifier = (call_expression "unlink(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier )))) ;) (if_statement "if ((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)) {\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }" if (parenthesized_expression "((iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2))" ( (binary_expression "(iVar17 != 0) && (piVar21 = __errno_location(), *piVar21 != 2)" (parenthesized_expression "(iVar17 != 0)" ( (binary_expression "iVar17 != 0" identifier != number_literal) )) && (parenthesized_expression "(piVar21 = __errno_location(), *piVar21 != 2)" ( (comma_expression "piVar21 = __errno_location(), *piVar21 != 2" (assignment_expression "piVar21 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) , (binary_expression "*piVar21 != 2" (pointer_expression "*piVar21" * identifier) != number_literal)) ))) )) (compound_statement "{\n          local_1f0 = (cp_options *)piVar21;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          uVar19 = dcgettext();\n                    /* WARNING: Subroutine does not return */\n          error(0,*(int *)local_1f0,uVar19);\n        }" { (expression_statement "local_1f0 = (cp_options *)piVar21;" (assignment_expression "local_1f0 = (cp_options *)piVar21" identifier = (cast_expression "(cp_options *)piVar21" ( (type_descriptor "cp_options *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(shell_escape_always_quoting_style,local_1f8)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = dcgettext();" (assignment_expression "uVar19 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) comment (expression_statement "error(0,*(int *)local_1f0,uVar19);" (call_expression "error(0,*(int *)local_1f0,uVar19)" identifier (argument_list "(0,*(int *)local_1f0,uVar19)" ( number_literal , (pointer_expression "*(int *)local_1f0" * (cast_expression "(int *)local_1f0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) , identifier ))) ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,local_1f0->verbose)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,local_1f0->verbose)" identifier (argument_list "(local_1f4._1_3_,local_1f0->verbose)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (field_expression "local_1f0->verbose" identifier -> field_identifier) ))))) ;) (if_statement "if (local_1f0->verbose != false) {\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(local_1f0->verbose != false)" ( (binary_expression "local_1f0->verbose != false" (field_expression "local_1f0->verbose" identifier -> field_identifier) != false) )) (compound_statement "{\n          iVar17 = 0x11;\n          quotearg_style(shell_escape_always_quoting_style,local_1f8);\n          dcgettext();\n          __printf_chk();\n          local_230 = (Hash_table *)0x0;\n          puVar39 = auStack_28c;\n          goto LAB_00016259;\n        }" { (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (expression_statement "quotearg_style(shell_escape_always_quoting_style,local_1f8);" (call_expression "quotearg_style(shell_escape_always_quoting_style,local_1f8)" identifier (argument_list "(shell_escape_always_quoting_style,local_1f8)" ( identifier , identifier ))) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_230 = (Hash_table *)0x0;" (assignment_expression "local_230 = (Hash_table *)0x0" identifier = (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) (if_statement "if ((byte)local_1fc != '\0') {\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar17 = 0x11;\n          local_230 = local_1f0->dest_info;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;\n          local_230 = (Hash_table *)0x0;\n          iVar17 = 0x11;\n          goto LAB_00016277;\n        }" { (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (expression_statement "local_230 = local_1f0->dest_info;" (assignment_expression "local_230 = local_1f0->dest_info" identifier = (field_expression "local_1f0->dest_info" identifier -> field_identifier)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(byte)local_1fc)" identifier (argument_list "(local_1f4._1_3_,(byte)local_1fc)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) ;) (if_statement "if (local_1f0->dest_info == (Hash_table *)0x0) goto LAB_00016356;" if (parenthesized_expression "(local_1f0->dest_info == (Hash_table *)0x0)" ( (binary_expression "local_1f0->dest_info == (Hash_table *)0x0" (field_expression "local_1f0->dest_info" identifier -> field_identifier) == (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00016356;" goto statement_identifier ;)) (expression_statement "local_230 = (Hash_table *)0x0;" (assignment_expression "local_230 = (Hash_table *)0x0" identifier = (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (goto_statement "goto LAB_00016277;" goto statement_identifier ;) })) (expression_statement "iVar17 = 0x11;" (assignment_expression "iVar17 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "local_230 = (Hash_table *)0x0;" (assignment_expression "local_230 = (Hash_table *)0x0" identifier = (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "poVar36 = (off_t *)auStack_28c;" (assignment_expression "poVar36 = (off_t *)auStack_28c" identifier = (cast_expression "(off_t *)auStack_28c" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_00016356;" goto statement_identifier ;) })) (labeled_statement "LAB_00016570:\n      poVar36 = (off_t *)puVar39;" statement_identifier : (expression_statement "poVar36 = (off_t *)puVar39;" (assignment_expression "poVar36 = (off_t *)puVar39" identifier = (cast_expression "(off_t *)puVar39" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "bVar32 = 1;" (assignment_expression "bVar32 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) }))) (if_statement "if ((local_204 & 0xf000) == 0x4000) {\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" if (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if (local_1f0->move_mode == false) goto LAB_00016cbd;\nLAB_00017420:\n      IVar5 = local_1f0->interactive;\n      if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;\n      puVar39 = auStack_28c;\n      if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" { (if_statement "if (local_1f0->move_mode == false) goto LAB_00016cbd;" if (parenthesized_expression "(local_1f0->move_mode == false)" ( (binary_expression "local_1f0->move_mode == false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) == false) )) (goto_statement "goto LAB_00016cbd;" goto statement_identifier ;)) (labeled_statement "LAB_00017420:\n      IVar5 = local_1f0->interactive;" statement_identifier : (expression_statement "IVar5 = local_1f0->interactive;" (assignment_expression "IVar5 = local_1f0->interactive" identifier = (field_expression "local_1f0->interactive" identifier -> field_identifier)) ;)) (if_statement "if ((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))\n      goto LAB_00016cbd;" if (parenthesized_expression "((IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))))" ( (binary_expression "(IVar5 != I_ALWAYS_NO) &&\n         (((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12)))" (parenthesized_expression "(IVar5 != I_ALWAYS_NO)" ( (binary_expression "IVar5 != I_ALWAYS_NO" identifier != identifier) )) && (parenthesized_expression "(((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12)))" ( (parenthesized_expression "((IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12))" ( (binary_expression "(IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))) ||\n          (_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12)" (parenthesized_expression "(IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12))))" ( (binary_expression "IVar5 != I_ASK_USER &&\n           (((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))" (binary_expression "IVar5 != I_ASK_USER" identifier != identifier) && (parenthesized_expression "(((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)))" ( (parenthesized_expression "((IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12))" ( (binary_expression "(IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)) ||\n            (_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)" (parenthesized_expression "(IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false))" ( (binary_expression "IVar5 != I_UNSPECIFIED || (local_1f0->stdin_tty == false)" (binary_expression "IVar5 != I_UNSPECIFIED" identifier != identifier) || (parenthesized_expression "(local_1f0->stdin_tty == false)" ( (binary_expression "local_1f0->stdin_tty == false" (field_expression "local_1f0->stdin_tty" identifier -> field_identifier) == false) ))) )) || (parenthesized_expression "(_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12)" ( (comma_expression "_Var12 = writable_destination(local_1f8,dst_sb.st_mode), _Var12" (assignment_expression "_Var12 = writable_destination(local_1f8,dst_sb.st_mode)" identifier = (call_expression "writable_destination(local_1f8,dst_sb.st_mode)" identifier (argument_list "(local_1f8,dst_sb.st_mode)" ( identifier , (field_expression "dst_sb.st_mode" identifier . field_identifier) )))) , identifier) ))) )) ))) )) || (parenthesized_expression "(_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12)" ( (comma_expression "_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode), _Var12" (assignment_expression "_Var12 = overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode)" identifier = (call_expression "overwrite_ok(local_1f0,local_1f8,(stat *)&dst_sb.st_mode)" identifier (argument_list "(local_1f0,local_1f8,(stat *)&dst_sb.st_mode)" ( identifier , identifier , (cast_expression "(stat *)&dst_sb.st_mode" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&dst_sb.st_mode" & (field_expression "dst_sb.st_mode" identifier . field_identifier))) )))) , identifier) ))) )) ))) )) (goto_statement "goto LAB_00016cbd;" goto statement_identifier ;)) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (if_statement "if (local_208 != (_Bool *)0x0) {\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }" if (parenthesized_expression "(local_208 != (_Bool *)0x0)" ( (binary_expression "local_208 != (_Bool *)0x0" identifier != (cast_expression "(_Bool *)0x0" ( (type_descriptor "_Bool *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *local_208 = true;\n        puVar39 = auStack_28c;\n      }" { (expression_statement "*local_208 = true;" (assignment_expression "*local_208 = true" (pointer_expression "*local_208" * identifier) = true) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) })) (goto_statement "goto LAB_00016570;" goto statement_identifier ;) })) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (if_statement "if ((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)) {\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }" if (parenthesized_expression "((local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false))" ( (binary_expression "(local_1f0->preserve_timestamps != false) && (uVar16 = 1, local_1f0->move_mode != false)" (parenthesized_expression "(local_1f0->preserve_timestamps != false)" ( (binary_expression "local_1f0->preserve_timestamps != false" (field_expression "local_1f0->preserve_timestamps" identifier -> field_identifier) != false) )) && (parenthesized_expression "(uVar16 = 1, local_1f0->move_mode != false)" ( (comma_expression "uVar16 = 1, local_1f0->move_mode != false" (assignment_expression "uVar16 = 1" identifier = number_literal) , (binary_expression "local_1f0->move_mode != false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) != false)) ))) )) (compound_statement "{\n      uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);\n    }" { (expression_statement "uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);" (assignment_expression "uVar16 = (uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_)" identifier = (call_expression "(uint)((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_)" ( (binary_expression "(stat *)dst_sb.st_dev != (stat *)src_sb.st_dev ||\n                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_" (binary_expression "(stat *)dst_sb.st_dev != (stat *)src_sb.st_dev" (cast_expression "(stat *)dst_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "dst_sb.st_dev" identifier . field_identifier)) != (cast_expression "(stat *)src_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_dev" identifier . field_identifier))) || (binary_expression "dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_" (field_expression "dst_sb.st_dev._4_4_" (field_expression "dst_sb.st_dev" identifier . field_identifier) . field_identifier) != (field_expression "src_sb.st_dev._4_4_" (field_expression "src_sb.st_dev" identifier . field_identifier) . field_identifier))) )))) ;) })) (expression_statement "iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16);" (assignment_expression "iVar17 = utimecmp(local_1f8,&dst_sb,&src_sb,uVar16)" identifier = (call_expression "utimecmp(local_1f8,&dst_sb,&src_sb,uVar16)" identifier (argument_list "(local_1f8,&dst_sb,&src_sb,uVar16)" ( identifier , (pointer_expression "&dst_sb" & identifier) , (pointer_expression "&src_sb" & identifier) , identifier )))) ;) (if_statement "if (iVar17 < 0) {\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" if (parenthesized_expression "(iVar17 < 0)" ( (binary_expression "iVar17 < 0" identifier < number_literal) )) (compound_statement "{\n      if (local_1f0->move_mode == false) goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" { (if_statement "if (local_1f0->move_mode == false) goto LAB_00016ca2;" if (parenthesized_expression "(local_1f0->move_mode == false)" ( (binary_expression "local_1f0->move_mode == false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) == false) )) (goto_statement "goto LAB_00016ca2;" goto statement_identifier ;)) (goto_statement "goto LAB_00017420;" goto statement_identifier ;) })) (if_statement "if (local_208 != (_Bool *)0x0) {\n      *local_208 = true;\n    }" if (parenthesized_expression "(local_208 != (_Bool *)0x0)" ( (binary_expression "local_208 != (_Bool *)0x0" identifier != (cast_expression "(_Bool *)0x0" ( (type_descriptor "_Bool *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_208 = true;\n    }" { (expression_statement "*local_208 = true;" (assignment_expression "*local_208 = true" (pointer_expression "*local_208" * identifier) = true) ;) })) (expression_statement "pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev));" (assignment_expression "pcVar18 = remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev))" identifier = (call_expression "remember_copied(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev))" identifier (argument_list "(local_1f8,CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),\n                              CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev))" ( identifier , (call_expression "CONCAT44(src_sb.st_ino._4_4_,(char *)src_sb.st_ino)" identifier (argument_list "(src_sb.st_ino._4_4_,(char *)src_sb.st_ino)" ( (field_expression "src_sb.st_ino._4_4_" (field_expression "src_sb.st_ino" identifier . field_identifier) . field_identifier) , (cast_expression "(char *)src_sb.st_ino" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_ino" identifier . field_identifier)) ))) , (call_expression "CONCAT44(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev)" identifier (argument_list "(src_sb.st_dev._4_4_,(stat *)src_sb.st_dev)" ( (field_expression "src_sb.st_dev._4_4_" (field_expression "src_sb.st_dev" identifier . field_identifier) . field_identifier) , (cast_expression "(stat *)src_sb.st_dev" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "src_sb.st_dev" identifier . field_identifier)) ))) )))) ;) (expression_statement "puVar39 = auStack_28c;" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) ;) (if_statement "if ((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)) goto LAB_00016570;" if (parenthesized_expression "((pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12))" ( (binary_expression "(pcVar18 == (char *)0x0) ||\n       (_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)" (parenthesized_expression "(pcVar18 == (char *)0x0)" ( (binary_expression "pcVar18 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12)" ( (comma_expression "_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0)),\n       puVar39 = auStack_28c, _Var12" (assignment_expression "_Var12 = create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0))" identifier = (call_expression "create_hard_link(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0))" identifier (argument_list "(pcVar18,local_1f8,true,local_1f0->verbose,SUB41(local_20c,0))" ( identifier , identifier , true , (field_expression "local_1f0->verbose" identifier -> field_identifier) , (call_expression "SUB41(local_20c,0)" identifier (argument_list "(local_20c,0)" ( identifier , number_literal ))) )))) , (comma_expression "puVar39 = auStack_28c, _Var12" (assignment_expression "puVar39 = auStack_28c" identifier = identifier) , identifier)) ))) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) (expression_statement "poVar36 = (off_t *)auStack_28c;" (assignment_expression "poVar36 = (off_t *)auStack_28c" identifier = (cast_expression "(off_t *)auStack_28c" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (local_1f0->preserve_security_context != false) {\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }" if (parenthesized_expression "(local_1f0->preserve_security_context != false)" ( (binary_expression "local_1f0->preserve_security_context != false" (field_expression "local_1f0->preserve_security_context" identifier -> field_identifier) != false) )) (compound_statement "{\n      restore_default_fscreatecon_or_die();\n      poVar36 = (off_t *)auStack_28c;\n    }" { (expression_statement "restore_default_fscreatecon_or_die();" (call_expression "restore_default_fscreatecon_or_die()" identifier (argument_list "()" ( ))) ;) (expression_statement "poVar36 = (off_t *)auStack_28c;" (assignment_expression "poVar36 = (off_t *)auStack_28c" identifier = (cast_expression "(off_t *)auStack_28c" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) (goto_statement "goto LAB_00016148;" goto statement_identifier ;) })) (expression_statement "local_214 = (stat *)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (stat *)((uint)local_214._1_3_ << 8)" identifier = (cast_expression "(stat *)((uint)local_214._1_3_ << 8)" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_214._1_3_ << 8)" ( (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_214._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_230 = (Hash_table *)0x0;" (assignment_expression "local_230 = (Hash_table *)0x0" identifier = (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00016259:\n  puVar40 = puVar39;" statement_identifier : (expression_statement "puVar40 = puVar39;" (assignment_expression "puVar40 = puVar39" identifier = identifier) ;)) (if_statement "if (((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0)) {\nLAB_00016338:\n    poVar36 = (off_t *)puVar40;\n    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }\n    if (iVar17 == 0) {\n      if (local_1f0->move_mode != false) goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar16 = src_sb.st_ino._4_4_;\n    pcVar18 = (char *)src_sb.st_ino;\n    if ((local_1f0->recursive != false) && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (stat *)src_sb.st_dev;\n      local_210 = src_sb.st_dev._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -8) = local_214;\n        *(uint *)((int)poVar36 + -0xc) = uVar16;\n        *(char **)((int)poVar36 + -0x10) = pcVar18;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163c0;\n        local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                               *(dev_t *)((int)poVar36 + -8));\n      }\n      else {\n        *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -0x14) = local_214;\n        *(uint *)((int)poVar36 + -0x18) = uVar16;\n        *(char **)((int)poVar36 + -0x1c) = pcVar18;\n        *(char **)((int)poVar36 + -0x20) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x176f4;\n        local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                            *(ino_t *)((int)poVar36 + -0x1c),\n                                            *(dev_t *)((int)poVar36 + -0x14));\n      }\n      if (local_214 != (stat *)0x0) {\nLAB_000163d3:\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163e7;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b02;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b16;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b2b;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x16406;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -0xc) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0x10) = 4;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18eee;\n          pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                   *(char **)((int)poVar36 + -0xc));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18f03;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0->dereference != DEREF_ALWAYS) &&\n           ((local_1f0->dereference != DEREF_COMMAND_LINE_ARGUMENTS || ((byte)local_1fc == '\0'))))\n        {\n          *(stat **)((int)poVar36 + -8) = local_214;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d3f;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d53;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d68;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar13 = local_1f0->move_mode;\nLAB_00016afb:\n      if (cVar13 == '\0') {\nLAB_00016b03:\n        local_208 = (_Bool *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar17 == 0x11) {\n          *(char **)((int)poVar36 + -0xc) = local_1f8;\n          *(char **)((int)poVar36 + -0x10) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x174bc;\n          iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x174cc;\n            piVar21 = __errno_location();\n            iVar17 = *piVar21;\n            if (iVar17 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (local_1f0->verbose != false) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "renamed ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18223;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1822d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18244;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n          }\n          if (local_1f0->set_security_context != false) {\n            *(cp_options **)((int)poVar36 + -4) = local_1f0;\n            *(undefined4 *)((int)poVar36 + -8) = 1;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18208;\n            set_file_security_ctx\n                      (*(char **)((int)poVar36 + -0x10),*(_Bool *)((int)poVar36 + -0xc),\n                       *(_Bool *)((int)poVar36 + -8),*(cp_options **)((int)poVar36 + -4));\n          }\n          if (local_208 != (_Bool *)0x0) {\n            *local_208 = true;\n          }\n          puVar39 = (undefined1 *)poVar36;\n          if (((byte)local_1fc != '\0') && (local_1f0->last_file == false)) {\n            *(stat **)((int)poVar36 + -8) = &src_sb;\n            pcVar31 = local_1f0;\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(Hash_table **)((int)poVar36 + -0x10) = pcVar31->dest_info;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17ab6;\n            record_file(*(Hash_table **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc),\n                        *(stat **)((int)poVar36 + -8));\n            bVar32 = (byte)local_1fc;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar17 == 0x16) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185ca;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185de;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185f3;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar17 != 0x12) {\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180a2;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_200;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          local_1f0 = (cp_options *)pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180ba;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180cf;\n          uVar19 = dcgettext();\n          *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(int *)((int)poVar36 + -0x1c) = iVar17;\n          goto LAB_00017594;\n        }\n        uVar16 = local_204 & 0xf000;\n        if (uVar16 == 0x4000) {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x1825e;\n          iVar17 = rmdir(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1826e;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x164d6;\n          iVar17 = unlink(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1753d;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) {\nLAB_00017548:\n              *(char **)((int)poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1755a;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(char **)((int)poVar36 + -8) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              local_1f0 = (cp_options *)pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17572;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(undefined4 *)((int)poVar36 + -8) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17587;\n              uVar19 = dcgettext();\n              *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\nLAB_00017594:\n              *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar32 = uVar16 != 0x4000 & local_1f0->verbose;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n          if (bVar32 != 0) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "copied ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a23;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a2d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a44;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n            local_208 = (_Bool *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (_Bool *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar13 = local_1f0->move_mode;\n    if ((_Bool)cVar13 == false) {\n      if (local_1f0->preserve_links == false) goto LAB_000165a0;\n      if (local_1f0->hard_link == false) goto LAB_00016ac0;\n      local_214 = (stat *)0x0;\n      goto LAB_00016b03;\n    }\n    if (src_sb.st_nlink != 1) {\n      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {\nLAB_00016ac0:\n        if ((1 < src_sb.st_nlink) ||\n           ((((byte)local_1fc != '\0' && (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS))\n            || (local_214 = (stat *)0x0, local_1f0->dereference == DEREF_ALWAYS)))) {\n          *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n          *(stat **)((int)poVar36 + -0x14) = (stat *)src_sb.st_dev;\n          *(uint *)((int)poVar36 + -0x18) = src_sb.st_ino._4_4_;\n          *(char **)((int)poVar36 + -0x1c) = (char *)src_sb.st_ino;\n          *(char **)((int)poVar36 + -0x20) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x1772e;\n          local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                              *(ino_t *)((int)poVar36 + -0x1c),\n                                              *(dev_t *)((int)poVar36 + -0x14));\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (stat *)0x0;\n      goto LAB_00016495;\n    }\n    *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n    *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n    *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n    *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x1834d;\n    local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                           *(dev_t *)((int)poVar36 + -8));\nLAB_00017737:\n    pcVar31 = local_1f0;\n    if (local_214 == (stat *)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(stat **)((int)poVar36 + -0xc) = local_20c;\n    pcVar18 = local_1f8;\n    *(uint *)((int)poVar36 + -0x10) = (uint)pcVar31->verbose;\n    psVar20 = local_214;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x17785;\n    _Var12 = create_hard_link((char *)psVar20,pcVar18,true,*(_Bool *)((int)poVar36 + -0x10),\n                              *(_Bool *)((int)poVar36 + -0xc));\n    puVar39 = (undefined1 *)poVar36;\n    if (_Var12) goto LAB_00016570;\n    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;\nLAB_00016fcb:\n    pHVar23 = local_230;\n    if (local_230 != (Hash_table *)0x0) {\n      *(char **)((int)poVar36 + -0xc) = local_1f8;\n      *(Hash_table **)((int)poVar36 + -0x10) = pHVar23;\n      *(undefined4 *)((int)poVar36 + -0x14) = 0x16fe8;\n      iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n      if (iVar17 != 0) {\n        *(char **)((int)poVar36 + -0xc) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x10) = 4;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x182f0;\n        pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                 *(char **)((int)poVar36 + -0xc));\n        puVar38 = (undefined4 *)((int)poVar36 + -8);\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        ppuVar35 = ppuVar35 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (local_1f0->verbose != false) {\n        *(char **)((int)poVar36 + -8) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 1;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17015;\n        pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(Hash_table **)((int)poVar36 + -8) = local_230;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17029;\n        pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        *(undefined ***)((int)poVar36 + -0xc) = ppuVar35 + -0x2bde;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x1703e;\n        uVar19 = dcgettext();\n        *(char **)((int)poVar36 + -0x14) = pcVar18;\n        *(char **)((int)poVar36 + -0x18) = pcVar22;\n        *(undefined4 *)((int)poVar36 + -0x1c) = uVar19;\n        *(undefined4 *)((int)poVar36 + -0x20) = 1;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if (local_1f0->move_mode != false) goto LAB_00016338;\n    if (local_1f0->backup_type == no_backups) {\n      psVar20 = &dst_sb;\n      if ((char)local_214 == '\0') {\n        *(stat **)(puVar40 + -8) = &dst_back_sb;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar40 + -0x10) = 3;\n        local_214 = &dst_back_sb;\n        *(undefined4 *)(puVar40 + -0x14) = 0x17a7d;\n        iVar15 = __lxstat64(*(int *)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                            *(stat64 **)(puVar40 + -8));\n        psVar20 = local_214;\n        if (iVar15 != 0) goto LAB_00016338;\n      }\n      pcVar31 = local_1f0;\n      if ((psVar20->st_mode & 0xf000) == 0xa000) {\n        *(stat **)(puVar40 + -8) = psVar20;\n        *(char **)(puVar40 + -0xc) = local_1f8;\n        *(Hash_table **)(puVar40 + -0x10) = pcVar31->dest_info;\n        *(undefined4 *)(puVar40 + -0x14) = 0x162d3;\n        _Var12 = seen_file(*(Hash_table **)(puVar40 + -0x10),*(char **)(puVar40 + -0xc),\n                           *(stat **)(puVar40 + -8));\n        if (_Var12) {\n          *(char **)(puVar40 + -8) = local_1f8;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 1;\n          *(undefined4 *)(puVar40 + -0x14) = 0x162ec;\n          pcVar18 = quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                     *(char **)(puVar40 + -8));\n          *(char **)(puVar40 + -8) = local_200;\n          *(undefined4 *)(puVar40 + -0xc) = 4;\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16300;\n          local_1f0 = (cp_options *)\n                      quotearg_n_style(*(int *)(puVar40 + -0x10),*(quoting_style *)(puVar40 + -0xc),\n                                       *(char **)(puVar40 + -8));\n          *(undefined4 *)(puVar40 + -8) = 5;\n          *(char **)(puVar40 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar40 + -0x10) = 0;\n          *(undefined4 *)(puVar40 + -0x14) = 0x16319;\n          uVar19 = dcgettext();\n          pcVar31 = local_1f0;\n          *(char **)(puVar40 + -0x10) = pcVar18;\n          *(cp_options **)(puVar40 + -0x14) = pcVar31;\n          *(undefined4 *)(puVar40 + -0x18) = uVar19;\n          *(undefined4 *)(puVar40 + -0x1c) = 0;\n          *(undefined4 *)(puVar40 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)(puVar40 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    poVar36 = (off_t *)puVar40;\n    if (local_1f0->verbose != false) goto LAB_00016b18;\n    if (iVar17 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_214 = (stat *)0x0;\n    local_208 = (_Bool *)((uint)local_1f4 & 0xff);\nLAB_000165b7:\n    local_234 = (stat64 *)(local_204 & 0xfff);\n    if (local_1f0->set_mode != false) {\n      local_234 = (stat64 *)(local_1f0->mode & 0xfff);\n    }\n    if (local_1f0->preserve_ownership == false) {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16dee;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        if (_Var12) {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(cp_options **)(poVar36 + -2) = local_1f0;\n        *(_Bool **)((int)poVar36 + -0x14) = local_208;\n        *(uint *)(poVar36 + -3) = local_204;\n        *(char **)((int)poVar36 + -0x1c) = local_1f8;\n        *(char **)(poVar36 + -4) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x16a82;\n        _Var12 = set_process_security_ctx\n                           (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                            *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                            *(cp_options **)(poVar36 + -2));\n        local_23c = 0;\n        if (_Var12) goto LAB_0001664e;\n      }\n    }\n    else {\n      *(cp_options **)(poVar36 + -2) = local_1f0;\n      *(_Bool **)((int)poVar36 + -0x14) = local_208;\n      *(uint *)(poVar36 + -3) = local_204;\n      *(char **)((int)poVar36 + -0x1c) = local_1f8;\n      *(char **)(poVar36 + -4) = local_200;\n      *(undefined4 *)((int)poVar36 + -0x24) = 0x16618;\n      _Var12 = set_process_security_ctx\n                         (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                          *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                          *(cp_options **)(poVar36 + -2));\n      if (_Var12) {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          pcVar31 = local_1f0;\n          if (local_228 == (dir_list *)0x0) {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n          }\n          else {\n            local_20c = (stat *)src_sb.st_dev;\n            local_224 = src_sb.st_dev._4_4_;\n            pdVar29 = local_228;\n            do {\n              if ((*(uint *)((int)&pdVar29->ino + 4) == src_sb.st_ino._4_4_ &&\n                   *(char **)&pdVar29->ino == (char *)src_sb.st_ino) &&\n                 (src_sb.st_dev._4_4_ == *(__mode_t *)((int)&pdVar29->dev + 4) &&\n                  (stat *)src_sb.st_dev == *(stat **)&pdVar29->dev)) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16e7e;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              pdVar29 = pdVar29->parent;\n            } while (pdVar29 != (dir_list *)0x0);\n          }\n          local_20c = (stat *)src_sb.st_dev;\n          local_224 = src_sb.st_dev._4_4_;\n          local_238 = (stat64 *)((int)poVar36 - 0x11U & 0xfffffff0);\n          local_238->__pad1 = src_sb.st_ino._4_4_;\n          local_238->__st_ino = (__ino_t)(stat *)src_sb.st_dev;\n          *(dir_list **)&local_238->st_dev = local_228;\n          *(char **)((int)&local_238->st_dev + 4) = (char *)src_sb.st_ino;\n          local_238->st_mode = src_sb.st_dev._4_4_;\n          if (((byte)local_1f4 == '\0') && ((dst_sb.st_mode & 0xf000) == 0x4000)) {\n            if (local_1f0->set_security_context == false) {\n              bVar32 = local_1f0->preserve_security_context;\n              if ((_Bool)bVar32 != false) goto LAB_0001889e;\n            }\n            else {\n              bVar32 = local_1f0->preserve_security_context;\nLAB_0001889e:\n              *(cp_options **)((int)poVar36 + -0x24) = local_1f0;\n              *(undefined4 *)(poVar36 + -5) = 0;\n              *(uint *)((int)poVar36 + -0x2c) = (uint)bVar32;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x188b3;\n              _Var12 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -6),*(_Bool *)((int)poVar36 + -0x2c),\n                                  SUB81(poVar36[-5],0),*(cp_options **)((int)poVar36 + -0x24));\n              if ((!_Var12) && (poVar42 = poVar36 + -4, pcVar31->require_preserve_context != false))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)((int)poVar36 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(poVar36 + -6) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17154;\n            iVar17 = mkdir(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 100000;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)((int)poVar41 + -4) = pcVar18;\n              *(undefined4 *)((int)poVar41 + -8) = 0;\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f98;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar41 + -0xc) = 0x16f9f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar41 + -0xc) = pcVar22;\n              *(undefined4 *)((int)poVar41 + -0x10) = uVar19;\n              *(int *)((int)poVar41 + -0x14) = *piVar21;\n              *(undefined4 *)((int)poVar41 + -0x18) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar41 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat **)(poVar36 + -5) = &dst_sb;\n            *(char **)((int)poVar36 + -0x2c) = local_1f8;\n            *(undefined4 *)(poVar36 + -6) = 3;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x17176;\n            iVar17 = __lxstat64((int)poVar36[-6],*(char **)((int)poVar36 + -0x2c),\n                                *(stat64 **)(poVar36 + -5));\n            _Var11 = dst_sb.st_mode;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0x2c) = local_1f8;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x18ce1;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              poVar41 = poVar36 + -5;\n              *(undefined4 *)(poVar36 + -5) = 5;\n              pcVar18 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((dst_sb.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)((int)poVar36 + -0x2c) = dst_sb.st_mode | 0x1c0;\n              *(char **)(poVar36 + -6) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x171b2;\n              iVar17 = chmod(*(char **)(poVar36 + -6),*(__mode_t *)((int)poVar36 + -0x2c));\n              local_270 = _Var11;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x19082;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                poVar41 = poVar36 + -5;\n                *(undefined4 *)(poVar36 + -5) = 5;\n                pcVar18 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__mode_t *)(poVar36 + -6) = dst_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -0x34) = (stat *)dst_sb.st_dev;\n              *(uint *)(poVar36 + -7) = dst_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x3c) = (char *)dst_sb.st_ino;\n              *(char **)(poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x44) = 0x18c19;\n              remember_copied(*(char **)(poVar36 + -8),*(ino_t *)((int)poVar36 + -0x3c),\n                              *(dev_t *)((int)poVar36 + -0x34));\n              *local_21c = (code)0x1;\n            }\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            if (local_1f0->verbose != false) {\n              if (local_1f0->move_mode == false) {\n                *(undefined4 *)((int)poVar36 + -0x24) = 0x18d28;\n                emit_verbose(pcVar18,pcVar22,(char *)0x0);\n              }\n              else {\n                *(char **)((int)poVar36 + -0x2c) = local_1f8;\n                *(undefined4 *)(poVar36 + -6) = 4;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x171ff;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                         *(char **)((int)poVar36 + -0x2c));\n                *(undefined4 *)(poVar36 + -5) = 5;\n                *(char **)((int)poVar36 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(poVar36 + -6) = 0;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17214;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -5) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x2c) = uVar19;\n                *(undefined4 *)(poVar36 + -6) = 1;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          poVar42 = poVar36 + -4;\n          bVar32 = local_22c != (stat *)0x0 & local_1f0->one_file_system;\n          if ((bVar32 == 0) ||\n             (*(__mode_t *)((int)&local_22c->st_dev + 4) == src_sb.st_dev._4_4_ &&\n              *(stat **)&local_22c->st_dev == (stat *)src_sb.st_dev)) {\n            local_240 = (stat64 *)&dst_back_sb;\n            pcVar31 = local_1f0;\n            psVar33 = (stat64 *)&dst_back_sb;\n            for (iVar17 = 0x11; iVar17 != 0; iVar17 = iVar17 + -1) {\n              *(char **)&psVar33->st_dev = (char *)pcVar31->backup_type;\n              pcVar31 = (cp_options *)((int)pcVar31 + (uint)bVar49 * -8 + 4);\n              psVar33 = (stat64 *)((int)psVar33 + (uint)bVar49 * -8 + 4);\n            }\n            *(undefined4 *)((int)poVar36 + -0x2c) = 2;\n            *(char **)(poVar36 + -6) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x1726d;\n            pHVar23 = (Hash_table *)\n                      savedir(*(char **)(poVar36 + -6),*(savedir_option *)((int)poVar36 + -0x2c));\n            local_230 = pHVar23;\n            if (pHVar23 == (Hash_table *)0x0) {\n              *(char **)((int)poVar36 + -0x2c) = local_200;\n              *(undefined4 *)(poVar36 + -6) = 4;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19153;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -6),\n                                       *(char **)((int)poVar36 + -0x2c));\n              *(undefined4 *)(poVar36 + -5) = 5;\n              *(char **)((int)poVar36 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(poVar36 + -6) = 0;\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x19168;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x34) = 0x1916f;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x34) = pcVar18;\n              *(undefined4 *)(poVar36 + -7) = uVar19;\n              *(int *)((int)poVar36 + -0x3c) = *piVar21;\n              *(undefined4 *)(poVar36 + -8) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS) {\n              dst_back_sb.st_dev._4_4_ = 2;\n            }\n            if (*(char *)&pHVar23->bucket == '\0') {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              bVar32 = 1;\n            }\n            else {\n              local_228 = (dir_list *)((uint)local_228._1_3_ << 8);\n              local_20c = &src_sb;\n              local_234 = (stat64 *)&tmp_dst_sb;\n              local_22c = (stat *)&local_copy_into_self;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_200;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1731f;\n                psVar20 = (stat *)file_name_concat(*(char **)(poVar36 + -6),\n                                                   *(char **)((int)poVar36 + -0x2c),\n                                                   *(char ***)(poVar36 + -5));\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(Hash_table **)((int)poVar36 + -0x2c) = pHVar23;\n                *(char **)(poVar36 + -6) = local_1f8;\n                local_214 = psVar20;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x17336;\n                pcVar18 = file_name_concat(*(char **)(poVar36 + -6),*(char **)((int)poVar36 + -0x2c)\n                                           ,*(char ***)(poVar36 + -5));\n                p_Var7 = local_208;\n                cVar3 = *local_21c;\n                *(undefined4 *)(poVar36 + -5) = 0;\n                *(stat **)((int)poVar36 + -0x2c) = local_22c;\n                *(stat64 **)(poVar36 + -6) = local_234;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0;\n                *(stat64 **)(poVar36 + -7) = local_240;\n                *(stat64 **)((int)poVar36 + -0x3c) = local_238;\n                *(stat **)(poVar36 + -8) = local_20c;\n                psVar20 = local_214;\n                tmp_dst_sb.st_dev._0_1_ = cVar3;\n                *(undefined4 *)((int)poVar36 + -0x44) = 0x1737f;\n                _Var12 = copy_internal((char *)psVar20,pcVar18,SUB41(p_Var7,0),\n                                       *(stat **)(poVar36 + -8),*(dir_list **)((int)poVar36 + -0x3c)\n                                       ,*(cp_options **)(poVar36 + -7),\n                                       *(_Bool *)((int)poVar36 + -0x34),*(_Bool **)(poVar36 + -6),\n                                       *(_Bool **)((int)poVar36 + -0x2c),*(_Bool **)(poVar36 + -5));\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & _Var12);\n                *local_220 = (code)((byte)*local_220 | local_copy_into_self);\n                *(char **)(poVar36 + -6) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x1739d;\n                free(*(void **)(poVar36 + -6));\n                *(stat **)(poVar36 + -6) = local_214;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x173a9;\n                free(*(void **)(poVar36 + -6));\n                if (local_copy_into_self != false) break;\n                local_228 = (dir_list *)\n                            CONCAT31(local_228._1_3_,\n                                     (byte)local_228._0_1_ | (byte)tmp_dst_sb.st_dev._0_1_);\n                *(Hash_table **)(poVar36 + -6) = pHVar23;\n                *(undefined4 *)((int)poVar36 + -0x34) = 0x172fe;\n                sVar24 = strlen(*(char **)(poVar36 + -6));\n                pHVar23 = (Hash_table *)((int)&pHVar23->bucket + sVar24 + 1);\n              } while (*(char *)&pHVar23->bucket != '\0');\n              bVar32 = (byte)local_224;\n            }\n            *(Hash_table **)(poVar36 + -6) = local_230;\n            *(undefined4 *)((int)poVar36 + -0x34) = 0x173ce;\n            free(*(void **)(poVar36 + -6));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar14 = 0;\n            local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n            bVar49 = false;\n            local_224 = CONCAT31(local_224._1_3_,bVar32);\nLAB_00016722:\n            if (local_1f0->dest_info != (Hash_table *)0x0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar49);\n              *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n              *(char **)((int)poVar42 + -0xc) = local_1f8;\n              *(undefined4 *)((int)poVar42 + -0x10) = 3;\n              *(undefined4 *)((int)poVar42 + -0x14) = 0x1674c;\n              iVar17 = __lxstat64(*(int *)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                                  *(stat64 **)((int)poVar42 + -8));\n              pcVar31 = local_1f0;\n              bVar49 = (byte)local_1fc;\n              if (iVar17 == 0) {\n                *(stat **)((int)poVar42 + -8) = &dst_back_sb;\n                *(char **)((int)poVar42 + -0xc) = local_1f8;\n                *(Hash_table **)((int)poVar42 + -0x10) = pcVar31->dest_info;\n                *(undefined4 *)((int)poVar42 + -0x14) = 0x16772;\n                record_file(*(Hash_table **)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),\n                            *(stat **)((int)poVar42 + -8));\n                bVar49 = (byte)local_1fc;\n              }\n            }\n            bVar32 = (byte)local_224;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            poVar36 = poVar42;\n            goto LAB_00016794;\n          }\n          local_208 = (_Bool *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          poVar36 = poVar36 + -4;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (_Bool *)CONCAT31(local_208._1_3_,local_1f0->symbolic_link);\n          poVar42 = poVar36;\n          if (local_1f0->symbolic_link != false) {\n            if (*local_200 != '/') {\n              uVar47 = poVar36 < (undefined1 *)0xc;\n              uVar48 = poVar36 == (off_t *)0xc;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1667f;\n              psVar20 = (stat *)dir_name(*(char **)(poVar36 + -2));\n              iVar17 = 2;\n              pbVar43 = &DAT_0002c142;\n              psVar46 = psVar20;\n              do {\n                if (iVar17 == 0) break;\n                iVar17 = iVar17 + -1;\n                bVar32 = (byte)psVar46->st_dev;\n                uVar47 = *pbVar43 < bVar32;\n                uVar48 = *pbVar43 == bVar32;\n                pbVar43 = pbVar43 + (uint)bVar49 * -2 + 1;\n                psVar46 = (stat *)((int)psVar46 + (uint)bVar49 * -2 + 1);\n              } while ((bool)uVar48);\n              if ((!(bool)uVar47 && !(bool)uVar48) != (bool)uVar47) {\n                local_20c = psVar20;\n                *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n                *(undefined1 **)((int)poVar36 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(poVar36 + -2) = 3;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x17ae0;\n                iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                   *(stat64 **)(poVar36 + -1));\n                psVar20 = local_20c;\n                if (iVar17 == 0) {\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(stat **)((int)poVar36 + -0xc) = psVar20;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x17b03;\n                  iVar17 = __xstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                     *(stat64 **)(poVar36 + -1));\n                  psVar20 = local_20c;\n                  if ((iVar17 == 0) &&\n                     (((tmp_dst_sb.st_ino._4_4_ != dst_back_sb.st_ino._4_4_ ||\n                        (char *)tmp_dst_sb.st_ino != (char *)dst_back_sb.st_ino ||\n                       (tmp_dst_sb.st_dev._4_4_ != dst_back_sb.st_dev._4_4_)) ||\n                      ((stat *)tmp_dst_sb.st_dev != (stat *)dst_back_sb.st_dev)))) {\n                    *(stat **)(poVar36 + -2) = local_20c;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b37;\n                    free(*(void **)(poVar36 + -2));\n                    *(char **)(poVar36 + -1) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17b49;\n                    pcVar22 = quotearg_n_style_colon\n                                        ((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    pcVar18 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)((int)poVar36 + -0xc) = pcVar18;\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x16e93;\n                    uVar19 = dcgettext();\n                    *(char **)((int)poVar36 + -0x14) = pcVar22;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(stat **)(poVar36 + -2) = psVar20;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x166ac;\n              free(*(void **)(poVar36 + -2));\n            }\n            *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n            *(char **)(poVar36 + -1) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x166cf;\n            iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                     *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n            bVar14 = 0;\n            if (iVar17 < 0) {\n              *(char **)(poVar36 + -1) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1898c;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              local_1f4 = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189a4;\n              pcVar18 = quotearg_n_style((int)poVar36[-2],*(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)(poVar36 + -1));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189b9;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x189c0;\n              piVar21 = __errno_location();\n              *(char **)(poVar36 + -2) = local_1f4;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (local_1f0->hard_link != false) {\n            _Var12 = local_1f0->unlink_dest_after_failed_open;\n            *(stat **)((int)poVar36 + -0xc) = local_20c;\n            pcVar22 = local_1f8;\n            bVar14 = 0;\n            *(undefined4 *)(poVar36 + -2) = 0;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18382;\n            _Var12 = create_hard_link(pcVar18,pcVar22,_Var12,SUB81(poVar36[-2],0),\n                                      *(_Bool *)((int)poVar36 + -0xc));\n            if (_Var12) goto LAB_000166da;\nLAB_00016fad:\n            poVar36 = poVar42;\n            if (local_1f0->preserve_security_context != false) {\nLAB_000177a0:\n              *(undefined4 *)((int)poVar36 + -4) = 0x177a5;\n              restore_default_fscreatecon_or_die();\n            }\n            if (local_214 == (stat *)0x0) {\n              *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n              *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n              *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n              *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18325;\n              forget_created(*(ino_t *)((int)poVar36 + -0x10),*(dev_t *)((int)poVar36 + -8));\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & local_1f0->copy_as_regular) != 0)) {\n            local_244 = src_sb.st_mode;\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->data_copy_required);\n            *(uint *)((int)poVar36 + -0xc) = (uint)(local_1f0->dereference == DEREF_NEVER) << 0x11;\n            *(char **)(poVar36 + -2) = local_200;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17b97;\n            local_208 = (_Bool *)open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            if ((int)local_208 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18d03;\n              pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              poVar41 = poVar36 + -1;\n              *(undefined4 *)(poVar36 + -1) = 5;\n              pcVar18 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(stat **)(poVar36 + -1) = &tmp_dst_sb;\n            *(_Bool **)((int)poVar36 + -0xc) = local_208;\n            *(undefined4 *)(poVar36 + -2) = 3;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17bbf;\n            iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                *(stat64 **)(poVar36 + -1));\n            pcVar31 = local_1f0;\n            if (iVar17 != 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f4d;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f62;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18f69;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              goto LAB_00018b73;\n            }\n            if ((src_sb.st_ino._4_4_ != tmp_dst_sb.st_ino._4_4_ ||\n                 (char *)src_sb.st_ino != (char *)tmp_dst_sb.st_ino) ||\n               (src_sb.st_dev._4_4_ != tmp_dst_sb.st_dev._4_4_ ||\n                (stat *)src_sb.st_dev != (stat *)tmp_dst_sb.st_dev)) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b5a;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "skipping file %s, as it was replaced while being copied";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18b6f;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar28 = (code *)(~local_278 & local_284);\n              *(code **)(poVar36 + -1) = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xc1;\n              *(char **)(poVar36 + -2) = local_1f8;\n              local_21c = pcVar28;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190c8;\n              pdVar29 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n              local_228 = pdVar29;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar17 = *(int *)local_220;\n              bVar32 = iVar17 == 0x11 & (byte)((uint)pdVar29 >> 0x1f);\n              local_22c = (stat *)CONCAT31(local_22c._1_3_,bVar32);\n              if (bVar32 == 0) {\nLAB_00019445:\n                bVar32 = iVar17 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n                if (bVar32 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(poVar36 + -1) = (stat64 *)&dst_back_sb;\n                    *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                    *(undefined4 *)(poVar36 + -2) = 3;\n                    local_240 = (stat64 *)&dst_back_sb;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x17c9e;\n                    iVar17 = __fxstat64((int)poVar36[-2],*(int *)((int)poVar36 + -0xc),\n                                        *(stat64 **)(poVar36 + -1));\n                    if (iVar17 != 0) {\n                      *(int *)((int)poVar36 + -4) = iVar17;\n                      *(int *)(poVar36 + -1) = iVar17;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x198f9;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1990e;\n                      uVar19 = dcgettext();\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19915;\n                      piVar21 = __errno_location();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar19 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0->reflink_mode != REFLINK_NEVER) {\n                        *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                        *(_Bool **)(poVar36 + -1) = local_208;\n                        *(undefined4 *)((int)poVar36 + -0xc) = 0x40049409;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19d52;\n                        iVar17 = ioctl((int)poVar36[-2],*(ulong *)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_11;\n                        if (iVar17 == 0) goto LAB_000194e2;\n                        if (local_1f0->reflink_mode == REFLINK_ALWAYS) {\n                          *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                          *(char **)(poVar36 + -1) = local_200;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 1;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d7d;\n                          pcVar18 = quotearg_n_style((int)poVar36[-2],\n                                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                                     *(char **)(poVar36 + -1));\n                          *(char **)(poVar36 + -1) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19d91;\n                          local_20c = (stat *)quotearg_n_style((int)poVar36[-2],\n                                                               *(quoting_style *)\n                                                                ((int)poVar36 + -0xc),\n                                                               *(char **)(poVar36 + -1));\n                          *(undefined4 *)(poVar36 + -1) = 5;\n                          *(char **)((int)poVar36 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(poVar36 + -2) = 0;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19daa;\n                          uVar19 = dcgettext();\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19db1;\n                          piVar21 = __errno_location();\n                          psVar20 = local_20c;\n                          *(char **)(poVar36 + -2) = pcVar18;\n                          *(stat **)((int)poVar36 + -0x14) = psVar20;\n                          *(undefined4 *)(poVar36 + -3) = uVar19;\n                          *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                          *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                          *(undefined **)((int)poVar36 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)((int)poVar36 + -4) = 0x17ccd;\n                      uVar26 = getpagesize();\n                      uVar16 = dst_back_sb.st_blksize - 0x20000;\n                      local_25c = dst_back_sb.st_blksize;\n                      local_258 = (code *)dst_back_sb.st_blksize;\n                      if (0x1ffe0000 < uVar16) {\n                        local_258 = get_quoting_style;\n                        uVar16 = 0x200;\n                        if (dst_back_sb.st_blksize - 1U < 0x20000000) {\n                          uVar16 = dst_back_sb.st_blksize;\n                        }\n                        local_25c = uVar16;\n                      }\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(undefined4 *)((int)poVar36 + -0xc) = 2;\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0;\n                      *(undefined4 *)(poVar36 + -3) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(_Bool **)(poVar36 + -4) = local_208;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x17d28;\n                      fdadvise((int)poVar36[-4],*(off_t *)((int)poVar36 + -0x1c),\n                               *(off_t *)((int)poVar36 + -0x14),*(fadvice_t *)((int)poVar36 + -0xc))\n                      ;\n                      local_21c = (code *)(tmp_dst_sb.st_mode & 0xf000);\n                      bVar50 = false;\n                      if ((code *)(tmp_dst_sb.st_mode & 0xf000) == (code *)0x8000) {\n                        uVar16 = tmp_dst_sb.st_size._4_4_ >> 0x1f & 0x1ff;\n                        iVar17 = tmp_dst_sb.st_size._4_4_ +\n                                 (uint)CARRY4(uVar16,(uint)(code *)tmp_dst_sb.st_size);\n                        iVar15 = iVar17 >> 9;\n                        uVar16 = (uint)((uint)tmp_dst_sb.st_blocks <\n                                       ((uint)((code *)tmp_dst_sb.st_size + uVar16) >> 9 |\n                                       iVar17 * 0x800000));\n                        iVar17 = tmp_dst_sb.st_blocks._4_4_ - iVar15;\n                        bVar50 = (SBORROW4(tmp_dst_sb.st_blocks._4_4_,iVar15) !=\n                                 SBORROW4(iVar17,uVar16)) != (int)(iVar17 - uVar16) < 0;\n                      }\n                      local_220 = (code *)(uVar26 - 1);\n                      if ((dst_back_sb.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0->sparse_mode != SPARSE_ALWAYS) {\n                          if ((local_1f0->sparse_mode == SPARSE_AUTO) && (bVar50)) {\n                            *(code **)(poVar36 + -2) = local_258 + uVar26;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x199e0;\n                            local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                            local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                        -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19f62;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\nLAB_000199fc:\n                          local_274 = local_1f0->sparse_mode;\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\n                      else {\nLAB_00017d9d:\n                        local_220 = (code *)(0x7fffffff - uVar26);\n                        _Var27 = tmp_dst_sb.st_blksize;\n                        if (0x1ffe0000 < tmp_dst_sb.st_blksize - 0x20000U) {\n                          _Var27 = 0x20000;\n                        }\n                        *(undefined4 *)((int)poVar36 + -4) = 0x20000;\n                        *(code **)(poVar36 + -1) = (code *)(0x7fffffff - uVar26);\n                        *(code **)((int)poVar36 + -0xc) = local_258;\n                        *(__blksize_t *)(poVar36 + -2) = _Var27;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17dd4;\n                        pcVar28 = (code *)buffer_lcm(*(size_t *)(poVar36 + -2),\n                                                     *(size_t *)((int)poVar36 + -0xc),\n                                                     *(size_t *)(poVar36 + -1));\n                        if ((local_21c == (code *)0x8000) &&\n                           (tmp_dst_sb.st_size._4_4_ <\n                            (int)(uint)((code *)tmp_dst_sb.st_size < local_258))) {\n                          local_258 = (code *)tmp_dst_sb.st_size + 1;\n                        }\n                        local_21c = pcVar28 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar28);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar28;\n                        }\n                        *(code **)(poVar36 + -2) = local_258 + uVar26;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17e2e;\n                        local_220 = (code *)xmalloc(*(size_t *)(poVar36 + -2));\n                        local_27c = (_Bool *)local_220 + (uVar26 - 1) +\n                                    -((uint)((_Bool *)local_220 + (uVar26 - 1)) % uVar26);\n                        if (bVar50) {\n                          local_285 = '\0';\n                          local_274 = SPARSE_NEVER;\nLAB_00019a18:\n                          pcVar28 = (code *)0x0;\n                          iVar17 = 0;\n                          local_21c = (code *)tmp_dst_sb.st_size;\n                          *(code **)((int)poVar36 + -4) = (code *)tmp_dst_sb.st_size;\n                          *(code **)(poVar36 + -1) = (code *)tmp_dst_sb.st_size;\n                          *(stat **)((int)poVar36 + -0xc) = (stat *)&local_copy_into_self;\n                          *(_Bool **)(poVar36 + -2) = local_208;\n                          local_218 = tmp_dst_sb.st_size._4_4_;\n                          local_22c = (stat *)&local_copy_into_self;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19a4e;\n                          extent_scan_init((int)poVar36[-2],*(extent_scan **)((int)poVar36 + -0xc));\n                          local_280 = &_GLOBAL_OFFSET_TABLE_;\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          do {\n                            *(stat **)(poVar36 + -2) = local_22c;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19a93;\n                            _Var12 = extent_scan_read(*(extent_scan **)(poVar36 + -2));\n                            ppuVar35 = local_280;\n                            if (!_Var12) {\n                              uVar19 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var_00,_Var12);\n                                  *(char **)(poVar36 + -1) = local_200;\n                                  *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1b5;\n                                  pcVar18 = quotearg_n_style_colon\n                                                      ((int)poVar36[-2],\n                                                       *(quoting_style *)((int)poVar36 + -0xc),\n                                                       *(char **)(poVar36 + -1));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  ppuVar35 = ppuVar35 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                uVar26 = 0;\n                                if (local_285 != '\0') {\n                                  uVar26 = local_25c;\n                                }\n                                uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                                local_25c = uVar26;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar28;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar17;\n                              do {\n                                puVar1 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar28 = (code *)*puVar1;\n                                iVar17 = puVar1[1];\n                                local_24c = puVar1[2];\n                                local_248 = puVar1[3];\n                                iVar34 = puVar1[3] + iVar17 + (uint)CARRY4(local_24c,(uint)pcVar28);\n                                iVar15 = local_218 - iVar34;\n                                if ((SBORROW4(local_218,iVar34) !=\n                                    SBORROW4(iVar15,(uint)(local_21c < pcVar28 + local_24c))) !=\n                                    (int)(iVar15 - (uint)(local_21c < pcVar28 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar17) !=\n                                      SBORROW4(local_218 - iVar17,(uint)(local_21c < pcVar28))) !=\n                                      (int)((local_218 - iVar17) - (uint)(local_21c < pcVar28)) < 0)\n                                  {\n                                    pcVar28 = local_21c;\n                                    iVar17 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar28;\n                                  local_248 = (local_218 - iVar17) - (uint)(local_21c < pcVar28);\n                                }\n                                local_254 = (code *)(((int)pcVar28 - (int)local_26c) - local_264);\n                                local_250 = (((iVar17 - local_268) - (uint)(pcVar28 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar28 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)((int)poVar36 + -4) = 0;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(code **)((int)poVar36 + -0xc) = pcVar28;\n                                  *(_Bool **)(poVar36 + -2) = local_208;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ca8;\n                                  _Var51 = lseek64((int)poVar36[-2],\n                                                   *(__off64_t *)((int)poVar36 + -0xc),\n                                                   *(int *)((int)poVar36 + -4));\n                                  pcVar18 = local_1f8;\n                                  pdVar29 = local_228;\n                                  if (_Var51 < 0) {\n                                    *(int *)((int)poVar36 + -4) = iVar17;\n                                    ppuVar35 = local_280;\n                                    *(int *)(poVar36 + -1) = iVar17;\n                                    *(char **)((int)poVar36 + -0xc) = local_200;\n                                    *(undefined4 *)(poVar36 + -2) = 4;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f22;\n                                    pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                             *(char **)((int)poVar36 + -0xc));\n                                    *(undefined4 *)(poVar36 + -1) = 5;\n                                    ppuVar35 = (undefined **)((int)ppuVar35 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                                    *(undefined4 *)(poVar36 + -2) = 0;\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f37;\n                                    uVar19 = dcgettext();\n                                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19f3e;\n                                    piVar21 = __errno_location();\n                                    *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                    *(undefined **)((int)poVar36 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == SPARSE_NEVER) {\n                                    *(undefined4 *)((int)poVar36 + -4) = 0x19d2c;\n                                    _Var12 = write_zeros((int)pdVar29,*poVar36);\n                                    if (!_Var12) {\n                                      *(code **)((int)poVar36 + -4) = pcVar28;\n                                      ppuVar35 = local_280;\n                                      *(char **)(poVar36 + -1) = local_1f8;\n                                      *(undefined4 *)((int)poVar36 + -0xc) = 3;\n                                      *(undefined4 *)(poVar36 + -2) = 0;\n                                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a193;\n                                      pcVar18 = quotearg_n_style_colon\n                                                          ((int)poVar36[-2],\n                                                           *(quoting_style *)((int)poVar36 + -0xc),\n                                                           *(char **)(poVar36 + -1));\n                                      *(undefined4 *)(poVar36 + -1) = 5;\n                                      ppuVar35 = ppuVar35 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    uVar16 = 0;\n                                    goto LAB_00019af3;\n                                  }\n                                  bVar50 = local_274 == SPARSE_ALWAYS;\n                                  *(int *)((int)poVar36 + -0xc) = local_250;\n                                  *(code **)(poVar36 + -2) = local_254;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19ce6;\n                                  _Var12 = create_hole((int)pdVar29,pcVar18,bVar50,poVar36[-2]);\n                                  local_20c = (stat *)CONCAT31(local_20c._1_3_,_Var12);\n                                  if (_Var12) goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar35 = local_280;\n                                  *(__uid_t *)(poVar36 + -2) = local_1bc;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19d0d;\n                                  free(*(void **)(poVar36 + -2));\n                                  bVar14 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                uVar16 = 0;\n                                if (local_274 == SPARSE_ALWAYS) {\n                                  uVar16 = local_25c;\n                                }\nLAB_00019af3:\n                                p_Var7 = local_27c;\n                                *(_Bool **)(poVar36 + -2) = &read_hole;\n                                *(_Bool **)((int)poVar36 + -0x14) = &wrote_hole_at_eof;\n                                pdVar29 = local_228;\n                                *(int *)(poVar36 + -3) = local_248;\n                                *(uint *)((int)poVar36 + -0x1c) = local_24c;\n                                *(char **)(poVar36 + -4) = local_1f8;\n                                *(char **)((int)poVar36 + -0x24) = local_200;\n                                *(undefined4 *)(poVar36 + -5) = 1;\n                                *(uint *)((int)poVar36 + -0x2c) = uVar16;\n                                p_Var9 = local_208;\n                                *(code **)(poVar36 + -6) = local_258;\n                                *(undefined4 *)((int)poVar36 + -0x34) = 0x19b3c;\n                                _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,\n                                                     *(size_t *)(poVar36 + -6),\n                                                     *(size_t *)((int)poVar36 + -0x2c),\n                                                     SUB81(poVar36[-5],0),\n                                                     *(char **)((int)poVar36 + -0x24),\n                                                     *(char **)(poVar36 + -4),\n                                                     *(uintmax_t *)((int)poVar36 + -0x1c),\n                                                     *(off_t **)((int)poVar36 + -0x14),\n                                                     *(_Bool **)(poVar36 + -2));\n                                if (!_Var12) goto LAB_00019cf7;\n                                local_250 = iVar17 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar28,_wrote_hole_at_eof);\n                                local_254 = pcVar28 + _wrote_hole_at_eof;\n                                uVar47 = (byte)local_20c;\n                                if (local_1d8 != 0 || _wrote_hole_at_eof != 0) {\n                                  uVar47 = read_hole;\n                                }\n                                local_20c = (stat *)CONCAT31(local_20c._1_3_,uVar47);\n                                if (local_250 == local_218 &&\n                                    pcVar28 + _wrote_hole_at_eof == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar28;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar17;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(__uid_t *)(poVar36 + -2) = local_1bc;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1969a;\n                            free(*(void **)(poVar36 + -2));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar19 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          pdVar29 = local_228;\n                          ppuVar35 = local_280;\n                          bVar50 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar50 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == SPARSE_NEVER) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a279;\n                            _Var12 = write_zeros((int)pdVar29,*poVar36);\n                            iVar17 = CONCAT31(extraout_var_01,_Var12);\n                            uVar19 = extraout_ECX_14;\n                            if (!_Var12) goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                            *(int *)(poVar36 + -1) = local_218;\n                            *(code **)((int)poVar36 + -0xc) = local_21c;\n                            *(dir_list **)(poVar36 + -2) = local_228;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x1971b;\n                            iVar17 = ftruncate64((int)poVar36[-2],\n                                                 *(__off64_t *)((int)poVar36 + -0xc));\n                            pcVar8 = local_21c;\n                            pcVar28 = local_254;\n                            if (iVar17 != 0) goto LAB_00019fca;\n                            uVar19 = extraout_ECX_06;\n                            if ((local_274 == SPARSE_ALWAYS) && (bVar50)) {\n                              *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_00;\n                              iVar17 = local_250;\n                              *(undefined4 *)(poVar36 + -1) = extraout_EDX_00;\n                              *(uint *)((int)poVar36 + -0xc) =\n                                   (local_218 - iVar17) - (uint)(pcVar8 < pcVar28);\n                              *(int *)(poVar36 + -2) = (int)pcVar8 - (int)pcVar28;\n                              *(int *)((int)poVar36 + -0x14) = iVar17;\n                              *(code **)(poVar36 + -3) = pcVar28;\n                              *(undefined4 *)((int)poVar36 + -0x1c) = 3;\n                              *(dir_list **)(poVar36 + -4) = local_228;\n                              *(undefined4 *)((int)poVar36 + -0x24) = 0x1976c;\n                              iVar15 = fallocate64((int)poVar36[-4],*(int *)((int)poVar36 + -0x1c),\n                                                   poVar36[-3],poVar36[-2]);\n                              uVar19 = extraout_ECX_07;\n                              if (iVar15 < 0) {\n                                *(undefined4 *)((int)poVar36 + -4) = 0x1977c;\n                                piVar21 = __errno_location();\n                                uVar19 = extraout_ECX_08;\n                                if ((*piVar21 != 0x26) && (*piVar21 != 0x5f)) {\n                                  *(int *)((int)poVar36 + -4) = iVar17;\n                                  *(int *)(poVar36 + -1) = iVar17;\n                                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                  *(undefined4 *)(poVar36 + -2) = 4;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197a1;\n                                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                           *(char **)((int)poVar36 + -0xc));\n                                  *(undefined4 *)(poVar36 + -1) = 5;\n                                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb1fb;\n                                  *(undefined4 *)(poVar36 + -2) = 0;\n                                  *(undefined4 *)((int)poVar36 + -0x14) = 0x197b6;\n                                  uVar19 = dcgettext();\n                                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_25c = 0;\n                        local_22c = (stat *)&local_copy_into_self;\n                        uVar16 = (uint)(local_1f0->sparse_mode == SPARSE_ALWAYS);\n                      }\nLAB_00017e78:\n                      p_Var7 = local_27c;\n                      *(_Bool **)(poVar36 + -2) = &wrote_hole_at_eof;\n                      pdVar29 = local_228;\n                      *(stat **)((int)poVar36 + -0x14) = local_22c;\n                      *(undefined4 *)(poVar36 + -3) = 0xffffffff;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n                      *(char **)(poVar36 + -4) = local_1f8;\n                      *(char **)((int)poVar36 + -0x24) = local_200;\n                      *(uint *)(poVar36 + -5) = uVar16;\n                      *(uint *)((int)poVar36 + -0x2c) = local_25c;\n                      p_Var9 = local_208;\n                      *(code **)(poVar36 + -6) = local_258;\n                      *(undefined4 *)((int)poVar36 + -0x34) = 0x17ebc;\n                      _Var12 = sparse_copy((int)p_Var9,(int)pdVar29,p_Var7,*(size_t *)(poVar36 + -6)\n                                           ,*(size_t *)((int)poVar36 + -0x2c),SUB81(poVar36[-5],0),\n                                           *(char **)((int)poVar36 + -0x24),*(char **)(poVar36 + -4)\n                                           ,*(uintmax_t *)((int)poVar36 + -0x1c),\n                                           *(off_t **)((int)poVar36 + -0x14),\n                                           *(_Bool **)(poVar36 + -2));\n                      if (_Var12) {\n                        uVar19 = extraout_ECX_00;\n                        if (wrote_hole_at_eof != false) {\n                          *(uint *)((int)poVar36 + -4) = CONCAT31(extraout_var,_Var12);\n                          *(undefined4 *)(poVar36 + -1) = local_1d0;\n                          *(undefined4 *)((int)poVar36 + -0xc) = _local_copy_into_self;\n                          *(dir_list **)(poVar36 + -2) = local_228;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x19fbf;\n                          iVar17 = ftruncate64((int)poVar36[-2],*(__off64_t *)((int)poVar36 + -0xc))\n                          ;\n                          uVar19 = extraout_ECX_13;\n                          if (iVar17 < 0) {\nLAB_00019fca:\n                            *(int *)((int)poVar36 + -4) = iVar17;\n                            *(int *)(poVar36 + -1) = iVar17;\n                            *(char **)((int)poVar36 + -0xc) = local_1f8;\n                            *(undefined4 *)(poVar36 + -2) = 4;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fd9;\n                            pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                     *(char **)((int)poVar36 + -0xc));\n                            *(undefined4 *)(poVar36 + -1) = 5;\n                            ppuVar35 = (undefined **)((int)ppuVar35 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)((int)poVar36 + -0xc) = ppuVar35;\n                            *(undefined4 *)(poVar36 + -2) = 0;\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19fee;\n                            uVar19 = dcgettext();\n                            *(undefined4 *)((int)poVar36 + -0x14) = 0x19ff5;\n                            piVar21 = __errno_location();\n                            *(char **)((int)poVar36 + -0x14) = pcVar18;\n                            *(undefined4 *)(poVar36 + -3) = uVar19;\n                            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                            *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                            *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar14 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (local_1f0->preserve_timestamps != false) {\n                      timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n                      timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n                      timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n                      timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n                      *(__syscall_slong_t *)((int)poVar36 + -4) = src_sb.st_mtim.tv_nsec;\n                      *(timespec **)(poVar36 + -1) = timespec;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(dir_list **)(poVar36 + -2) = local_228;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1988f;\n                      iVar17 = fdutimens((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                         *(timespec **)(poVar36 + -1));\n                      uVar19 = extraout_ECX_09;\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)(poVar36 + -1) = iVar17;\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        *(undefined4 *)(poVar36 + -2) = 4;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198a9;\n                        pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                 *(char **)((int)poVar36 + -0xc));\n                        *(undefined4 *)(poVar36 + -1) = 5;\n                        *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n                        *(undefined4 *)(poVar36 + -2) = 0;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198be;\n                        uVar19 = dcgettext();\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x198c5;\n                        piVar21 = __errno_location();\n                        *(char **)((int)poVar36 + -0x14) = pcVar18;\n                        *(undefined4 *)(poVar36 + -3) = uVar19;\n                        *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                        *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                        *(undefined **)((int)poVar36 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    pcVar18 = local_1f8;\n                    pdVar29 = local_228;\n                    if ((local_1f0->preserve_ownership != false) &&\n                       ((src_sb.st_uid != dst_back_sb.st_uid ||\n                        (dst_back_sb.st_uid = dst_back_sb.st_gid,\n                        src_sb.st_gid != dst_back_sb.st_gid)))) {\n                      *(__uid_t *)((int)poVar36 + -4) = dst_back_sb.st_uid;\n                      uVar16 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(poVar36 + -1) = local_240;\n                      *(uint *)((int)poVar36 + -0xc) = uVar16;\n                      *(stat **)(poVar36 + -2) = &src_sb;\n                      pcVar31 = local_1f0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x17f33;\n                      iVar17 = set_owner(pcVar31,pcVar18,(int)pdVar29,*(stat **)(poVar36 + -2),\n                                         *(_Bool *)((int)poVar36 + -0xc),*(stat **)(poVar36 + -1));\n                      if (iVar17 == -1) goto LAB_000197c4;\n                      uVar19 = extraout_ECX_01;\n                      if (iVar17 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (local_1f0->preserve_xattr == false) {\nLAB_0001950b:\n                      bVar14 = 1;\n                    }\n                    else {\n                      pcVar31 = local_1f0;\n                      if ((dst_back_sb.st_mode & 0x80) == 0) {\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19e80;\n                        pcVar31 = (cp_options *)geteuid();\n                        pcVar18 = local_1f8;\n                        pdVar29 = local_228;\n                        if (pcVar31 == (cp_options *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x19ea0;\n                        iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,0x180);\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        uVar16 = CONCAT31((int3)((uint)iVar17 >> 8),iVar17 == 0);\n                        *(uint *)((int)poVar36 + -4) = uVar16;\n                        *(uint *)(poVar36 + -1) = uVar16;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = pdVar29;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x19ec7;\n                        bVar14 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar19 = extraout_ECX_12;\n                        if (!(bool)bVar14) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        pcVar22 = local_1f8;\n                        p_Var7 = local_208;\n                        *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                        *(cp_options **)(poVar36 + -1) = pcVar31;\n                        pcVar18 = local_200;\n                        *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n                        *(dir_list **)(poVar36 + -2) = local_228;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x17f8c;\n                        _Var12 = copy_attr(pcVar18,(int)p_Var7,pcVar22,(int)poVar36[-2],\n                                           *(cp_options **)((int)poVar36 + -0xc));\n                        uVar16 = (uint)_Var12;\n                        uVar19 = extraout_ECX_02;\n                        if (_Var12) goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (stat *)CONCAT31(local_20c._1_3_,\n                                                     local_1f0->require_preserve_xattr);\n                        bVar14 = local_1f0->require_preserve_xattr ^ 1;\n                      }\n                      pcVar18 = local_1f8;\n                      pdVar29 = local_228;\n                      if ((char)uVar16 != '\0') {\n                        uVar16 = ~local_278 & local_284;\n                        *(undefined4 *)((int)poVar36 + -4) = 0x17fd3;\n                        fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                        uVar19 = extraout_ECX_03;\n                      }\n                    }\n                    pcVar31 = local_1f0;\n                    if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n                      if (local_1f0->set_mode == false) {\n                        bVar49 = (byte)local_1f4 & local_1f0->explicit_no_preserve_mode;\n                        if (bVar49 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)((int)poVar36 + -4) = 0x1a00f;\n                            mVar30 = cached_umask();\n                            pcVar18 = local_1f8;\n                            pdVar29 = local_228;\n                            uVar16 = local_284;\n                            if ((local_278 & ~mVar30) != 0) {\n                              *(undefined4 *)((int)poVar36 + -4) = 0x1a034;\n                              iVar17 = fchmod_or_lchmod((int)pdVar29,pcVar18,uVar16);\n                              if (iVar17 != 0) {\n                                *(int *)((int)poVar36 + -4) = iVar17;\n                                *(int *)(poVar36 + -1) = iVar17;\n                                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                                *(undefined4 *)(poVar36 + -2) = 4;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a04b;\n                                local_21c = (code *)quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                                                   *(char **)((int)poVar36 + -0xc));\n                                *(undefined4 *)(poVar36 + -1) = 5;\n                                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                                *(undefined4 *)(poVar36 + -2) = 0;\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a064;\n                                local_20c = (stat *)dcgettext();\n                                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a06f;\n                                piVar21 = __errno_location();\n                                psVar20 = local_20c;\n                                *(code **)((int)poVar36 + -0x14) = local_21c;\n                                *(stat **)(poVar36 + -3) = psVar20;\n                                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                                *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (stat *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)((int)poVar36 + -4) = 0x1a1d2;\n                          mVar30 = cached_umask();\n                          *(undefined4 *)((int)poVar36 + -4) = extraout_EDX_01;\n                          *(mode_t *)(poVar36 + -1) = ~mVar30 & 0x1b6;\n                          *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                          *(char **)(poVar36 + -2) = local_1f8;\n                          *(undefined4 *)((int)poVar36 + -0x14) = 0x1a1ec;\n                          iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                           *(mode_t *)(poVar36 + -1));\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar49);\n                          if (iVar17 != 0) {\n                            bVar14 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)((int)poVar36 + -4) = uVar19;\n                        *(mode_t *)(poVar36 + -1) = pcVar31->mode;\n                        *(dir_list **)((int)poVar36 + -0xc) = local_228;\n                        *(char **)(poVar36 + -2) = local_1f8;\n                        *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0e8;\n                        iVar17 = set_acl(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                         *(mode_t *)(poVar36 + -1));\n                        if (iVar17 != 0) {\n                          bVar14 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(poVar36 + -2) = local_244;\n                      *(dir_list **)((int)poVar36 + -0x14) = local_228;\n                      *(char **)(poVar36 + -3) = local_1f8;\n                      *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                      *(char **)(poVar36 + -4) = local_200;\n                      *(undefined4 *)((int)poVar36 + -0x24) = 0x1961d;\n                      iVar17 = copy_acl(*(char **)(poVar36 + -4),*(int *)((int)poVar36 + -0x1c),\n                                        *(char **)(poVar36 + -3),*(int *)((int)poVar36 + -0x14),\n                                        *(mode_t *)(poVar36 + -2));\n                      if ((iVar17 != 0) && (local_1f0->require_preserve != false)) {\n                        bVar14 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar17 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar16 = 0xffffffff;\n                    pcVar18 = local_1f8;\n                    do {\n                      if (uVar16 == 0) break;\n                      uVar16 = uVar16 - 1;\n                      cVar13 = *pcVar18;\n                      pcVar18 = pcVar18 + (uint)bVar49 * -2 + 1;\n                    } while (cVar13 != '\0');\n                    iVar17 = (local_1f8[~uVar16 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar17 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->move_mode);\n                if (local_1f0->move_mode == false) {\n                  *(uint *)((int)poVar36 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar32);\n                  *(stat **)(poVar36 + -1) = &dst_back_sb;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 3;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x193f6;\n                  iVar15 = __lxstat64((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                      *(stat64 **)(poVar36 + -1));\n                  if ((iVar15 == 0) && ((dst_back_sb.st_mode & 0xf000) == 0xa000)) {\n                    uVar16 = (uint)local_1f0->open_dangling_dest_symlink;\n                    if (local_1f0->open_dangling_dest_symlink == false) {\n                      *(uint *)((int)poVar36 + -4) = uVar16;\n                      *(uint *)(poVar36 + -1) = uVar16;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)(poVar36 + -2) = 4;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a217;\n                      pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                               *(char **)((int)poVar36 + -0xc));\n                      *(undefined4 *)(poVar36 + -1) = 5;\n                      *(char **)((int)poVar36 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(poVar36 + -2) = 0;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x1a22c;\n                      uVar19 = dcgettext();\n                      *(char **)((int)poVar36 + -0x14) = pcVar18;\n                      *(undefined4 *)(poVar36 + -3) = uVar19;\n                      *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n                      *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                      *(undefined **)((int)poVar36 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)((int)poVar36 + -4) = uVar16;\n                    *(code **)(poVar36 + -1) = local_21c;\n                    *(undefined4 *)((int)poVar36 + -0xc) = 0x41;\n                    *(char **)(poVar36 + -2) = local_1f8;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19434;\n                    local_228 = (dir_list *)\n                                open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n                    iVar17 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19126;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(char **)((int)poVar36 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1913b;\n              uVar19 = dcgettext();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = iVar17;\nLAB_00018b73:\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)((int)poVar36 + -0xc) =\n                 (-(uint)(local_1f0->data_copy_required == false) & 0xfffffe00) + 0x201;\n            *(char **)(poVar36 + -2) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17c4d;\n            local_228 = (dir_list *)\n                        open_safer(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc));\n            pcVar10 = local_1f0;\n            if ((pcVar31->set_security_context == false) &&\n               (pcVar31->preserve_security_context == false)) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)((int)poVar36 + -4) = 0x19270;\n              piVar21 = __errno_location();\n              if (local_1f0->unlink_dest_after_failed_open == false) {\n                iVar17 = *piVar21;\n                if ((iVar17 == 2) && (local_1f0->move_mode == false)) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x19290;\n              iVar17 = unlink(*(char **)(poVar36 + -2));\n              if (iVar17 != 0) {\n                *(cp_options **)((int)poVar36 + -4) = pcVar31;\n                *(cp_options **)(poVar36 + -1) = pcVar31;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a104;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a119;\n                uVar19 = dcgettext();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                goto LAB_00018b73;\n              }\n              if (local_1f0->verbose != false) {\n                *(undefined4 *)((int)poVar36 + -4) = extraout_ECX_04;\n                *(undefined4 *)(poVar36 + -1) = extraout_ECX_04;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0aa;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(char **)((int)poVar36 + -0xc) = "removed %s\n";\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0bf;\n                uVar19 = dcgettext();\n                *(char **)(poVar36 + -1) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n                *(undefined4 *)(poVar36 + -2) = 1;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->set_security_context);\n              if (local_1f0->set_security_context == false) goto LAB_000190a0;\n              *(cp_options **)(poVar36 + -2) = local_1f0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 1;\n              *(uint *)(poVar36 + -3) = local_284;\n              *(char **)((int)poVar36 + -0x1c) = local_1f8;\n              *(char **)(poVar36 + -4) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x24) = 0x192f1;\n              bVar14 = set_process_security_ctx\n                                 (*(char **)(poVar36 + -4),*(char **)((int)poVar36 + -0x1c),\n                                  *(mode_t *)(poVar36 + -3),*(_Bool *)((int)poVar36 + -0x14),\n                                  *(cp_options **)(poVar36 + -2));\n              if ((bool)bVar14) goto LAB_00019094;\n              local_220 = (code *)0x0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              _Var12 = local_1f0->preserve_security_context;\n              *(cp_options **)((int)poVar36 + -4) = local_1f0;\n              *(undefined4 *)(poVar36 + -1) = 0;\n              *(uint *)((int)poVar36 + -0xc) = (uint)_Var12;\n              *(char **)(poVar36 + -2) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1952e;\n              bVar14 = set_file_security_ctx\n                                 (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                  SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n              if ((bool)bVar14) {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,pcVar10->require_preserve_context);\n              if (pcVar10->require_preserve_context == false) goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\nLAB_00018028:\n              *(dir_list **)(poVar36 + -2) = local_228;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18036;\n              iVar17 = close((int)poVar36[-2]);\n              if (iVar17 < 0) {\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1964e;\n                pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n                *(undefined4 *)(poVar36 + -2) = 0;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19663;\n                uVar19 = dcgettext();\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x1966a;\n                piVar21 = __errno_location();\n                *(char **)((int)poVar36 + -0x14) = pcVar18;\n                *(undefined4 *)(poVar36 + -3) = uVar19;\n                *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                *(undefined **)((int)poVar36 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(_Bool **)(poVar36 + -2) = local_208;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18056;\n            iVar17 = close((int)poVar36[-2]);\n            if (iVar17 < 0) {\n              *(char **)((int)poVar36 + -0xc) = local_200;\n              *(undefined4 *)(poVar36 + -2) = 4;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e7e;\n              pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                       *(char **)((int)poVar36 + -0xc));\n              *(undefined4 *)(poVar36 + -1) = 5;\n              *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb009;\n              *(undefined4 *)(poVar36 + -2) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e93;\n              uVar19 = dcgettext();\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18e9a;\n              piVar21 = __errno_location();\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)(poVar36 + -3) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\n              *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(poVar36 + -2) = local_220;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1806f;\n            free(*(void **)(poVar36 + -2));\n            local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n            if (bVar14 == 0) goto LAB_00016fad;\n          }\n          else {\n            bVar14 = 0;\n            if (local_238 == (stat64 *)0x1000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)0x0;\n              dst_back_sb.st_dev._4_4_ = 0;\n              uVar16 = ~local_23c & local_204;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              *(uint *)(poVar36 + -1) = uVar16;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18dbe;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(uint *)((int)poVar36 + -0xc) = uVar16 & 0xffffefff;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18de5;\n                iVar17 = mkfifo(*(char **)(poVar36 + -2),*(__mode_t *)((int)poVar36 + -0xc));\n                local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)(poVar36 + -1) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18e07;\n                  pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  poVar41 = poVar36 + -1;\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  pcVar18 = "cannot create fifo %s";\n                  goto LAB_00016f90;\n                }\n              }\n            }\n            else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n              dst_back_sb.st_dev._0_4_ = (stat *)src_sb.st_rdev;\n              *(stat **)((int)poVar36 + -4) = &dst_back_sb;\n              dst_back_sb.st_dev._4_4_ = src_sb.st_rdev._4_4_;\n              *(uint *)(poVar36 + -1) = ~local_23c & local_204;\n              *(char **)((int)poVar36 + -0xc) = local_1f8;\n              *(undefined4 *)(poVar36 + -2) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x16f59;\n              iVar17 = __xmknod((int)poVar36[-2],*(char **)((int)poVar36 + -0xc),\n                                *(__mode_t *)(poVar36 + -1),*(__dev_t **)((int)poVar36 + -4));\n              local_208 = (_Bool *)((uint)local_208 & 0xffffff00);\n              if (iVar17 != 0) {\n                *(char **)((int)poVar36 + -0xc) = local_1f8;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16f7c;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot create special file %s";\n                goto LAB_00016f90;\n              }\n            }\n            else {\n              if (local_238 != (stat64 *)0xa000) {\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18e30;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "%s has unknown file type";\n                goto LAB_00016e8b;\n              }\n              *(undefined4 *)((int)poVar36 + -0xc) = (undefined4)src_sb.st_size;\n              *(char **)(poVar36 + -2) = local_200;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a38;\n              pcVar18 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                            *(size_t *)((int)poVar36 + -0xc));\n              if (pcVar18 == (char *)0x0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(char **)((int)poVar36 + -0xc) = local_200;\n                *(undefined4 *)(poVar36 + -2) = 4;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x194d0;\n                pcVar22 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                         *(char **)((int)poVar36 + -0xc));\n                poVar41 = poVar36 + -1;\n                *(undefined4 *)(poVar36 + -1) = 5;\n                pcVar18 = "cannot read symbolic link %s";\n                goto LAB_00016f90;\n              }\n              *(uint *)((int)poVar36 + -4) = (uint)local_1f0->unlink_dest_after_failed_open;\n              *(char **)(poVar36 + -1) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 0xffffff9c;\n              *(char **)(poVar36 + -2) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x18a5e;\n              iVar17 = force_symlinkat(*(char **)(poVar36 + -2),*(int *)((int)poVar36 + -0xc),\n                                       *(char **)(poVar36 + -1),*(_Bool *)((int)poVar36 + -4));\n              if (iVar17 < 0) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x19315;\n                piVar21 = __errno_location();\n                local_208 = (_Bool *)*piVar21;\n                if ((_Bool *)*piVar21 == (_Bool *)0x0) goto LAB_00018a69;\n                if (((local_1f0->update != true) || ((byte)local_1f4 != '\0')) ||\n                   ((dst_sb.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                  *(char **)(poVar36 + -2) = pcVar18;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19347;\n                  free(*(void **)(poVar36 + -2));\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)(poVar36 + -2) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x19356;\n                  pcVar18 = quotearg_style(*(quoting_style *)(poVar36 + -2),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)(poVar36 + -1) = 5;\n                  *(char **)((int)poVar36 + -0xc) = "cannot create symbolic link %s";\n                  *(undefined4 *)(poVar36 + -2) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1936b;\n                  uVar19 = dcgettext();\n                  *(char **)((int)poVar36 + -0x14) = pcVar18;\n                  *(undefined4 *)(poVar36 + -3) = uVar19;\n                  *(_Bool **)((int)poVar36 + -0x1c) = local_208;\n                  *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_0001937a;\n                  error();\n                }\n                uVar16 = 0xffffffff;\n                pcVar22 = pcVar18;\n                do {\n                  if (uVar16 == 0) break;\n                  uVar16 = uVar16 - 1;\n                  cVar13 = *pcVar22;\n                  pcVar22 = pcVar22 + (uint)bVar49 * -2 + 1;\n                } while (cVar13 != '\0');\n                iVar17 = ~uVar16 - 1;\n                if ((dst_sb.st_size._4_4_ != 0) || ((int)dst_sb.st_size != iVar17))\n                goto LAB_0001933e;\n                *(int *)((int)poVar36 + -4) = iVar17;\n                *(int *)(poVar36 + -1) = iVar17;\n                *(int *)((int)poVar36 + -0xc) = (int)dst_sb.st_size;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e2b;\n                pcVar22 = areadlink_with_size(*(char **)(poVar36 + -2),\n                                              *(size_t *)((int)poVar36 + -0xc));\n                if (pcVar22 == (char *)0x0) goto LAB_0001933e;\n                *(char **)((int)poVar36 + -4) = pcVar22;\n                *(char **)(poVar36 + -1) = pcVar22;\n                *(char **)((int)poVar36 + -0xc) = pcVar18;\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e41;\n                iVar17 = strcmp(*(char **)(poVar36 + -2),*(char **)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(char **)(poVar36 + -2) = pcVar22;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x1a12b;\n                  free(*(void **)(poVar36 + -2));\n                  goto LAB_0001933e;\n                }\n                *(char **)(poVar36 + -2) = pcVar22;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e55;\n                free(*(void **)(poVar36 + -2));\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x19e5d;\n                free(*(void **)(poVar36 + -2));\n              }\n              else {\nLAB_00018a69:\n                *(char **)(poVar36 + -2) = pcVar18;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18a72;\n                free(*(void **)(poVar36 + -2));\n              }\n              if (local_1f0->preserve_security_context != false) {\n                *(undefined4 *)((int)poVar36 + -4) = 0x193dc;\n                restore_default_fscreatecon_or_die();\n              }\n              local_208 = (_Bool *)CONCAT31(local_208._1_3_,1);\n              _Var12 = local_1f0->preserve_ownership;\n              bVar14 = _Var12;\n              if (_Var12 != false) {\n                *(__gid_t *)(poVar36 + -1) = src_sb.st_gid;\n                *(__uid_t *)((int)poVar36 + -0xc) = src_sb.st_uid;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x18aba;\n                iVar17 = lchown(*(char **)(poVar36 + -2),*(__uid_t *)((int)poVar36 + -0xc),\n                                *(__gid_t *)(poVar36 + -1));\n                if (iVar17 == 0) {\n                  bVar14 = 0;\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                }\n                else {\n                  *(cp_options **)(poVar36 + -2) = local_1f0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x18ad3;\n                  _Var12 = chown_failure_ok(*(cp_options **)(poVar36 + -2));\n                  local_208 = (_Bool *)CONCAT31(local_208._1_3_,_Var12);\n                  if (!_Var12) {\n                    *(char **)((int)poVar36 + -4) = pcVar18;\n                    *(undefined4 *)(poVar36 + -1) = 5;\n                    *(char **)((int)poVar36 + -0xc) = "failed to preserve ownership for %s";\n                    *(undefined4 *)(poVar36 + -2) = 0;\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x19574;\n                    uVar19 = dcgettext();\n                    *(undefined4 *)((int)poVar36 + -0x14) = 0x1957b;\n                    piVar21 = __errno_location();\n                    *(char **)((int)poVar36 + -0x14) = local_1f8;\n                    *(undefined4 *)(poVar36 + -3) = uVar19;\n                    *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                    *(undefined4 *)(poVar36 + -4) = 0;\n                    /* WARNING: Subroutine does not return */\n                    *(undefined **)((int)poVar36 + -0x24) = &UNK_0001958b;\n                    error();\n                  }\n                  bVar14 = 0;\n                }\n              }\n            }\n          }\nLAB_000166da:\n          bVar49 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (stat *)CONCAT31(local_20c._1_3_,local_1f0->copy_as_regular);\n            _Var12 = (_Bool)((local_1f0->copy_as_regular ^ 1U) & bVar49);\n            if (_Var12 != false) {\n              _Var4 = local_1f0->preserve_security_context;\n              if ((local_1f0->set_security_context != false) || (bVar49 = _Var12, _Var4 != false)) {\n                *(cp_options **)((int)poVar36 + -4) = local_1f0;\n                *(undefined4 *)(poVar36 + -1) = 0;\n                *(uint *)((int)poVar36 + -0xc) = (uint)_Var4;\n                *(char **)(poVar36 + -2) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x177d2;\n                bVar49 = set_file_security_ctx\n                                   (*(char **)(poVar36 + -2),*(_Bool *)((int)poVar36 + -0xc),\n                                    SUB81(poVar36[-1],0),*(cp_options **)((int)poVar36 + -4));\n                if (!(bool)bVar49) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,local_1f0->require_preserve_context);\n                  bVar49 = _Var12;\n                  if (local_1f0->require_preserve_context != false) goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          bVar32 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((local_1f0->hard_link != false) && (bVar49 != 0)) || (bVar14 != 0))\n          goto LAB_0001614a;\n        }\n        if (local_1f0->preserve_timestamps == false) {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (local_1f0->preserve_xattr == false) goto LAB_0001614a;\n          *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n          pcVar22 = local_1f8;\n          pcVar18 = local_200;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x17511;\n          _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                             *(cp_options **)((int)poVar36 + -0xc));\n          if (_Var12) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve_xattr;\n        }\n        else {\n          timespec[0].tv_sec = src_sb.st_atim.tv_sec;\n          timespec[0].tv_nsec = src_sb.st_atim.tv_nsec;\n          timespec[1].tv_sec = src_sb.st_mtim.tv_sec;\n          timespec[1].tv_nsec = src_sb.st_mtim.tv_nsec;\n          if ((char)local_208 != '\0') {\n            *(timespec **)((int)poVar36 + -0xc) = timespec;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16805;\n            iVar17 = lutimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n            if (iVar17 != 0) {\n              *(undefined4 *)((int)poVar36 + -4) = 0x16811;\n              piVar21 = __errno_location();\n              if (*piVar21 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(timespec **)((int)poVar36 + -0xc) = timespec;\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18652;\n          iVar17 = utimens(*(char **)((int)poVar36 + -0x10),*(timespec **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\nLAB_00016816:\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x10) = 4;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16826;\n            pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                     *(char **)((int)poVar36 + -0xc));\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb03f;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x16846;\n            piVar21 = __errno_location();\n            uVar16 = local_1fc;\n            *(char **)((int)poVar36 + -0x14) = pcVar18;\n            *(uint *)((int)poVar36 + -0x18) = uVar16;\n            *(int *)((int)poVar36 + -0x1c) = *piVar21;\n            *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n            *(undefined **)((int)poVar36 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          pcVar18 = local_1f8;\n          if ((local_1f0->preserve_ownership != false) &&\n             ((((byte)local_1f4 != '\0' || (src_sb.st_uid != dst_sb.st_uid)) ||\n              (src_sb.st_gid != dst_sb.st_gid)))) {\n            *(stat **)((int)poVar36 + -8) = &dst_sb;\n            *(uint *)((int)poVar36 + -0xc) = (uint)local_1f4 & 0xff;\n            *(stat **)((int)poVar36 + -0x10) = &src_sb;\n            pcVar31 = local_1f0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x168d3;\n            iVar17 = set_owner(pcVar31,pcVar18,-1,*(stat **)((int)poVar36 + -0x10),\n                               *(_Bool *)((int)poVar36 + -0xc),*(stat **)((int)poVar36 + -8));\n            if (iVar17 == -1) goto LAB_00016148;\n            if (iVar17 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (local_1f0->preserve_xattr != false) {\n            *(cp_options **)((int)poVar36 + -0xc) = local_1f0;\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            *(undefined4 *)((int)poVar36 + -0x10) = 0xffffffff;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18c76;\n            _Var12 = copy_attr(pcVar18,-1,pcVar22,*(int *)((int)poVar36 + -0x10),\n                               *(cp_options **)((int)poVar36 + -0xc));\n            if ((!_Var12) && (local_1f0->require_preserve_xattr != false)) goto LAB_00016148;\n          }\n          if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {\n            if (local_1f0->set_mode == false) {\n              if ((local_1f0->explicit_no_preserve_mode & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)((int)poVar36 + -4) = 0x191ba;\n                  mVar30 = cached_umask();\n                  local_23c = local_23c & ~mVar30;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(mode_t *)((int)poVar36 + -4) = ~mVar30;\n                      *(stat **)((int)poVar36 + -8) = &dst_sb;\n                      *(char **)((int)poVar36 + -0xc) = local_1f8;\n                      *(undefined4 *)((int)poVar36 + -0x10) = 3;\n                      *(undefined4 *)((int)poVar36 + -0x14) = 0x19977;\n                      iVar17 = __lxstat64(*(int *)((int)poVar36 + -0x10),\n                                          *(char **)((int)poVar36 + -0xc),\n                                          *(stat64 **)((int)poVar36 + -8));\n                      if (iVar17 != 0) {\n                        *(int *)((int)poVar36 + -4) = iVar17;\n                        *(int *)((int)poVar36 + -8) = iVar17;\n                        puVar37 = (undefined4 *)((int)poVar36 + -0xc);\n                        *(char **)((int)poVar36 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = dst_sb.st_mode;\n                    if ((local_23c & ~dst_sb.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)((int)poVar36 + -0xc) = local_270 | local_23c;\n                *(char **)((int)poVar36 + -0x10) = local_1f8;\n                *(undefined4 *)((int)poVar36 + -0x14) = 0x16976;\n                iVar17 = chmod(*(char **)((int)poVar36 + -0x10),*(__mode_t *)((int)poVar36 + -0xc));\n                if (iVar17 != 0) {\n                  *(int *)((int)poVar36 + -4) = iVar17;\n                  *(int *)((int)poVar36 + -8) = iVar17;\n                  *(char **)((int)poVar36 + -0xc) = local_1f8;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 4;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x16990;\n                  pcVar22 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                           *(char **)((int)poVar36 + -0xc));\n                  *(undefined4 *)((int)poVar36 + -8) = 5;\n                  *(int *)((int)poVar36 + -0xc) = (int)ppuVar35 + -0xb027;\n                  *(undefined4 *)((int)poVar36 + -0x10) = 0;\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)((int)poVar36 + -0x14) = 0x169b0;\n                  piVar21 = __errno_location();\n                  pcVar18 = local_1f4;\n                  *(char **)((int)poVar36 + -0x14) = pcVar22;\n                  *(char **)((int)poVar36 + -0x18) = pcVar18;\n                  *(int *)((int)poVar36 + -0x1c) = *piVar21;\n                  *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n                  *(undefined **)((int)poVar36 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar16 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar16 = 0x1ff;\n              }\n              *(undefined4 *)((int)poVar36 + -4) = 0x191a8;\n              mVar30 = cached_umask();\n              *(mode_t *)((int)poVar36 + -8) = ~mVar30 & uVar16;\n            }\n            else {\n              *(mode_t *)((int)poVar36 + -8) = local_1f0->mode;\n            }\n            *(undefined4 *)((int)poVar36 + -0xc) = 0xffffffff;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18ece;\n            iVar17 = set_acl(*(char **)((int)poVar36 + -0x10),*(int *)((int)poVar36 + -0xc),\n                             *(mode_t *)((int)poVar36 + -8));\n            if (iVar17 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)((int)poVar36 + -0x10) = local_204;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x18) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0xffffffff;\n          *(char **)((int)poVar36 + -0x20) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x183b6;\n          iVar17 = copy_acl(*(char **)((int)poVar36 + -0x20),*(int *)((int)poVar36 + -0x1c),\n                            *(char **)((int)poVar36 + -0x18),*(int *)((int)poVar36 + -0x14),\n                            *(mode_t *)((int)poVar36 + -0x10));\n          if (iVar17 == 0) goto LAB_0001614a;\n          cVar13 = local_1f0->require_preserve;\n        }\n        if (cVar13 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" if (parenthesized_expression "(((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0))" ( (binary_expression "((byte)local_1fc == '\0') || (local_1f0->dest_info == (Hash_table *)0x0)" (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_1f0->dest_info == (Hash_table *)0x0)" ( (binary_expression "local_1f0->dest_info == (Hash_table *)0x0" (field_expression "local_1f0->dest_info" identifier -> field_identifier) == (cast_expression "(Hash_table *)0x0" ( (type_descriptor "Hash_table *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\nLAB_00016338:\n    poVar36 = (off_t *)puVar40;\n    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }\n    if (iVar17 == 0) {\n      if (local_1f0->move_mode != false) goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar16 = src_sb.st_ino._4_4_;\n    pcVar18 = (char *)src_sb.st_ino;\n    if ((local_1f0->recursive != false) && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (stat *)src_sb.st_dev;\n      local_210 = src_sb.st_dev._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -8) = local_214;\n        *(uint *)((int)poVar36 + -0xc) = uVar16;\n        *(char **)((int)poVar36 + -0x10) = pcVar18;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163c0;\n        local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                               *(dev_t *)((int)poVar36 + -8));\n      }\n      else {\n        *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n        *(stat **)((int)poVar36 + -0x14) = local_214;\n        *(uint *)((int)poVar36 + -0x18) = uVar16;\n        *(char **)((int)poVar36 + -0x1c) = pcVar18;\n        *(char **)((int)poVar36 + -0x20) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x176f4;\n        local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                            *(ino_t *)((int)poVar36 + -0x1c),\n                                            *(dev_t *)((int)poVar36 + -0x14));\n      }\n      if (local_214 != (stat *)0x0) {\nLAB_000163d3:\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_200;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x163e7;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b02;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b16;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18b2b;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(stat **)((int)poVar36 + -0xc) = local_214;\n        *(char **)((int)poVar36 + -0x10) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x16406;\n        _Var12 = same_name(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n        if (_Var12) {\n          *(char **)((int)poVar36 + -0xc) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0x10) = 4;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18eee;\n          pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                   *(char **)((int)poVar36 + -0xc));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18f03;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0->dereference != DEREF_ALWAYS) &&\n           ((local_1f0->dereference != DEREF_COMMAND_LINE_ARGUMENTS || ((byte)local_1fc == '\0'))))\n        {\n          *(stat **)((int)poVar36 + -8) = local_214;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d3f;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d53;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x18d68;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar13 = local_1f0->move_mode;\nLAB_00016afb:\n      if (cVar13 == '\0') {\nLAB_00016b03:\n        local_208 = (_Bool *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar17 == 0x11) {\n          *(char **)((int)poVar36 + -0xc) = local_1f8;\n          *(char **)((int)poVar36 + -0x10) = local_200;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x174bc;\n          iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x174cc;\n            piVar21 = __errno_location();\n            iVar17 = *piVar21;\n            if (iVar17 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (local_1f0->verbose != false) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "renamed ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18223;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x1822d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18244;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n          }\n          if (local_1f0->set_security_context != false) {\n            *(cp_options **)((int)poVar36 + -4) = local_1f0;\n            *(undefined4 *)((int)poVar36 + -8) = 1;\n            *(undefined4 *)((int)poVar36 + -0xc) = 0;\n            *(char **)((int)poVar36 + -0x10) = local_1f8;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x18208;\n            set_file_security_ctx\n                      (*(char **)((int)poVar36 + -0x10),*(_Bool *)((int)poVar36 + -0xc),\n                       *(_Bool *)((int)poVar36 + -8),*(cp_options **)((int)poVar36 + -4));\n          }\n          if (local_208 != (_Bool *)0x0) {\n            *local_208 = true;\n          }\n          puVar39 = (undefined1 *)poVar36;\n          if (((byte)local_1fc != '\0') && (local_1f0->last_file == false)) {\n            *(stat **)((int)poVar36 + -8) = &src_sb;\n            pcVar31 = local_1f0;\n            *(char **)((int)poVar36 + -0xc) = local_1f8;\n            *(Hash_table **)((int)poVar36 + -0x10) = pcVar31->dest_info;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17ab6;\n            record_file(*(Hash_table **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc),\n                        *(stat **)((int)poVar36 + -8));\n            bVar32 = (byte)local_1fc;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar17 == 0x16) {\n          *(char **)((int)poVar36 + -8) = top_level_dst_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185ca;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = top_level_src_name;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185de;\n          pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x185f3;\n          uVar19 = dcgettext();\n          *(char **)((int)poVar36 + -0x10) = pcVar18;\n          *(char **)((int)poVar36 + -0x14) = pcVar22;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(undefined4 *)((int)poVar36 + -0x1c) = 0;\n          *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n          *(undefined **)((int)poVar36 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar17 != 0x12) {\n          *(char **)((int)poVar36 + -8) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 1;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180a2;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(char **)((int)poVar36 + -8) = local_200;\n          *(undefined4 *)((int)poVar36 + -0xc) = 4;\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          local_1f0 = (cp_options *)pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180ba;\n          pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                     *(quoting_style *)((int)poVar36 + -0xc),\n                                     *(char **)((int)poVar36 + -8));\n          *(undefined4 *)((int)poVar36 + -8) = 5;\n          *(char **)((int)poVar36 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)((int)poVar36 + -0x10) = 0;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x180cf;\n          uVar19 = dcgettext();\n          *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n          *(char **)((int)poVar36 + -0x14) = pcVar18;\n          *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n          *(int *)((int)poVar36 + -0x1c) = iVar17;\n          goto LAB_00017594;\n        }\n        uVar16 = local_204 & 0xf000;\n        if (uVar16 == 0x4000) {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x1825e;\n          iVar17 = rmdir(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1826e;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)((int)poVar36 + -0x10) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x14) = 0x164d6;\n          iVar17 = unlink(*(char **)((int)poVar36 + -0x10));\n          if (iVar17 != 0) {\n            *(undefined4 *)((int)poVar36 + -4) = 0x1753d;\n            piVar21 = __errno_location();\n            if (*piVar21 != 2) {\nLAB_00017548:\n              *(char **)((int)poVar36 + -8) = local_1f8;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 1;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x1755a;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(char **)((int)poVar36 + -8) = local_200;\n              *(undefined4 *)((int)poVar36 + -0xc) = 4;\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              local_1f0 = (cp_options *)pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17572;\n              pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                         *(quoting_style *)((int)poVar36 + -0xc),\n                                         *(char **)((int)poVar36 + -8));\n              *(undefined4 *)((int)poVar36 + -8) = 5;\n              *(char **)((int)poVar36 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)((int)poVar36 + -0x10) = 0;\n              *(undefined4 *)((int)poVar36 + -0x14) = 0x17587;\n              uVar19 = dcgettext();\n              *(cp_options **)((int)poVar36 + -0x10) = local_1f0;\n              *(char **)((int)poVar36 + -0x14) = pcVar18;\n              *(undefined4 *)((int)poVar36 + -0x18) = uVar19;\n              *(int *)((int)poVar36 + -0x1c) = *piVar21;\nLAB_00017594:\n              *(undefined4 *)((int)poVar36 + -0x20) = 0;\n                    /* WARNING: Subroutine does not return */\n              *(undefined **)((int)poVar36 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar32 = uVar16 != 0x4000 & local_1f0->verbose;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar32);\n          if (bVar32 != 0) {\n            *(undefined4 *)((int)poVar36 + -8) = 5;\n            *(char **)((int)poVar36 + -0xc) = "copied ";\n            *(undefined4 *)((int)poVar36 + -0x10) = 0;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a23;\n            uVar19 = dcgettext();\n            *(undefined4 *)((int)poVar36 + -0xc) = uVar19;\n            *(undefined4 *)((int)poVar36 + -0x10) = 1;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a2d;\n            __printf_chk();\n            pcVar22 = local_1f8;\n            pcVar18 = local_200;\n            pHVar23 = local_230;\n            *(undefined4 *)((int)poVar36 + -0x14) = 0x17a44;\n            emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n            local_208 = (_Bool *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (_Bool *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar13 = local_1f0->move_mode;\n    if ((_Bool)cVar13 == false) {\n      if (local_1f0->preserve_links == false) goto LAB_000165a0;\n      if (local_1f0->hard_link == false) goto LAB_00016ac0;\n      local_214 = (stat *)0x0;\n      goto LAB_00016b03;\n    }\n    if (src_sb.st_nlink != 1) {\n      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {\nLAB_00016ac0:\n        if ((1 < src_sb.st_nlink) ||\n           ((((byte)local_1fc != '\0' && (local_1f0->dereference == DEREF_COMMAND_LINE_ARGUMENTS))\n            || (local_214 = (stat *)0x0, local_1f0->dereference == DEREF_ALWAYS)))) {\n          *(__mode_t *)((int)poVar36 + -0x10) = src_sb.st_dev._4_4_;\n          *(stat **)((int)poVar36 + -0x14) = (stat *)src_sb.st_dev;\n          *(uint *)((int)poVar36 + -0x18) = src_sb.st_ino._4_4_;\n          *(char **)((int)poVar36 + -0x1c) = (char *)src_sb.st_ino;\n          *(char **)((int)poVar36 + -0x20) = local_1f8;\n          *(undefined4 *)((int)poVar36 + -0x24) = 0x1772e;\n          local_214 = (stat *)remember_copied(*(char **)((int)poVar36 + -0x20),\n                                              *(ino_t *)((int)poVar36 + -0x1c),\n                                              *(dev_t *)((int)poVar36 + -0x14));\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (stat *)0x0;\n      goto LAB_00016495;\n    }\n    *(__mode_t *)((int)poVar36 + -4) = src_sb.st_dev._4_4_;\n    *(stat **)((int)poVar36 + -8) = (stat *)src_sb.st_dev;\n    *(uint *)((int)poVar36 + -0xc) = src_sb.st_ino._4_4_;\n    *(char **)((int)poVar36 + -0x10) = (char *)src_sb.st_ino;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x1834d;\n    local_214 = (stat *)src_to_dest_lookup(*(ino_t *)((int)poVar36 + -0x10),\n                                           *(dev_t *)((int)poVar36 + -8));\nLAB_00017737:\n    pcVar31 = local_1f0;\n    if (local_214 == (stat *)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(stat **)((int)poVar36 + -0xc) = local_20c;\n    pcVar18 = local_1f8;\n    *(uint *)((int)poVar36 + -0x10) = (uint)pcVar31->verbose;\n    psVar20 = local_214;\n    *(undefined4 *)((int)poVar36 + -0x14) = 0x17785;\n    _Var12 = create_hard_link((char *)psVar20,pcVar18,true,*(_Bool *)((int)poVar36 + -0x10),\n                              *(_Bool *)((int)poVar36 + -0xc));\n    puVar39 = (undefined1 *)poVar36;\n    if (_Var12) goto LAB_00016570;\n    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;\nLAB_00016fcb:\n    pHVar23 = local_230;\n    if (local_230 != (Hash_table *)0x0) {\n      *(char **)((int)poVar36 + -0xc) = local_1f8;\n      *(Hash_table **)((int)poVar36 + -0x10) = pHVar23;\n      *(undefined4 *)((int)poVar36 + -0x14) = 0x16fe8;\n      iVar17 = rename(*(char **)((int)poVar36 + -0x10),*(char **)((int)poVar36 + -0xc));\n      if (iVar17 != 0) {\n        *(char **)((int)poVar36 + -0xc) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0x10) = 4;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x182f0;\n        pcVar18 = quotearg_style(*(quoting_style *)((int)poVar36 + -0x10),\n                                 *(char **)((int)poVar36 + -0xc));\n        puVar38 = (undefined4 *)((int)poVar36 + -8);\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        ppuVar35 = ppuVar35 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (local_1f0->verbose != false) {\n        *(char **)((int)poVar36 + -8) = local_1f8;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 1;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17015;\n        pcVar18 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(Hash_table **)((int)poVar36 + -8) = local_230;\n        *(undefined4 *)((int)poVar36 + -0xc) = 4;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x17029;\n        pcVar22 = quotearg_n_style(*(int *)((int)poVar36 + -0x10),\n                                   *(quoting_style *)((int)poVar36 + -0xc),\n                                   *(char **)((int)poVar36 + -8));\n        *(undefined4 *)((int)poVar36 + -8) = 5;\n        *(undefined ***)((int)poVar36 + -0xc) = ppuVar35 + -0x2bde;\n        *(undefined4 *)((int)poVar36 + -0x10) = 0;\n        *(undefined4 *)((int)poVar36 + -0x14) = 0x1703e;\n        uVar19 = dcgettext();\n        *(char **)((int)poVar36 + -0x14) = pcVar18;\n        *(char **)((int)poVar36 + -0x18) = pcVar22;\n        *(undefined4 *)((int)poVar36 + -0x1c) = uVar19;\n        *(undefined4 *)((int)poVar36 + -0x20) = 1;\n        *(undefined4 *)((int)poVar36 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }" { (labeled_statement "LAB_00016338:\n    poVar36 = (off_t *)puVar40;" statement_identifier : (expression_statement "poVar36 = (off_t *)puVar40;" (assignment_expression "poVar36 = (off_t *)puVar40" identifier = (cast_expression "(off_t *)puVar40" ( (type_descriptor "off_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }" if (parenthesized_expression "((local_1f0->verbose != false) && (local_1f0->move_mode == false))" ( (binary_expression "(local_1f0->verbose != false) && (local_1f0->move_mode == false)" (parenthesized_expression "(local_1f0->verbose != false)" ( (binary_expression "local_1f0->verbose != false" (field_expression "local_1f0->verbose" identifier -> field_identifier) != false) )) && (parenthesized_expression "(local_1f0->move_mode == false)" ( (binary_expression "local_1f0->move_mode == false" (field_expression "local_1f0->move_mode" identifier -> field_identifier) == false) ))) )) (compound_statement "{\nLAB_00016b18:\n      pcVar22 = local_1f8;\n      pcVar18 = local_200;\n      pHVar23 = local_230;\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }\n    }" { (labeled_statement "LAB_00016b18:\n      pcVar22 = local_1f8;" statement_identifier : (expression_statement "pcVar22 = local_1f8;" (assignment_expression "pcVar22 = local_1f8" identifier = identifier) ;)) (expression_statement "pcVar18 = local_200;" (assignment_expression "pcVar18 = local_200" identifier = identifier) ;) (expression_statement "pHVar23 = local_230;" (assignment_expression "pHVar23 = local_230" identifier = identifier) ;) (if_statement "if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }" if (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        *(undefined4 *)((int)poVar36 + -4) = 0x16b45;\n        emit_verbose(pcVar18,pcVar22,(char *)pHVar23);\n      }" { (expression_statement "*(undefined4 *)((int)poVar36 + -4) = 0x16b45;" (assignment_expression "*(undefined4 *)((int)poVar36 + -4) = 0x16b45" (pointer_expression "*(undefined4 *)((int)poVar36 + -4)" * (cast_expression "(undefined4 *)((int)poVar36 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)poVar36 + -4)" ( (binary_expression "(int)poVar36 + -4" (cast_expression "(int)poVar36" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "emit_verbose(pcVar18,pcVar22,(char *)pHVar23);" (call_expression "emit_verbose(pcVar18,pcVar22,(char *)pHVar23)" identifi
[cell cut: 4,600,022 characters, first 1,048,576 kept]
(translation_unit "uint __regparm3\nFUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)\n\n{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    \n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}\n\n" (function_definition "uint __regparm3\nFUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)\n\n{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    \n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)" identifier (parameter_list "(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined1 param_3" type_identifier identifier) , (parameter_declaration "__ino_t *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "int *param_5" primitive_type (pointer_declarator "*param_5" * identifier)) , (parameter_declaration "int *param_6" primitive_type (pointer_declarator "*param_6" * identifier)) , (parameter_declaration "uint param_7" type_identifier identifier) , (parameter_declaration "code *param_8" type_identifier (pointer_declarator "*param_8" * identifier)) , (parameter_declaration "byte *param_9" type_identifier (pointer_declarator "*param_9" * identifier)) , (parameter_declaration "undefined1 *param_10" type_identifier (pointer_declarator "*param_10" * identifier)) ))) (compound_statement "{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    \n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}" { (declaration "code cVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (declaration "bool bVar4;" primitive_type identifier ;) (declaration "__mode_t _Var5;" type_identifier identifier ;) (declaration "char cVar6;" primitive_type identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "byte *pbVar13;" type_identifier (pointer_declarator "*pbVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "size_t sVar16;" primitive_type identifier ;) (declaration "byte **ppbVar17;" type_identifier (pointer_declarator "**ppbVar17" * (pointer_declarator "*ppbVar17" * identifier)) ;) (declaration "char *pcVar18;" primitive_type (pointer_declarator "*pcVar18" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "char *pcVar20;" primitive_type (pointer_declarator "*pcVar20" * identifier) ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "code *pcVar24;" type_identifier (pointer_declarator "*pcVar24" * identifier) ;) (declaration "undefined4 extraout_ECX;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_00;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_01;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_02;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_03;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_04;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_05;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_06;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_07;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_08;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_09;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_10;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_11;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_12;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_13;" type_identifier identifier ;) (declaration "undefined4 extraout_ECX_14;" type_identifier identifier ;) (declaration "byte bVar25;" type_identifier identifier ;) (declaration "stat64 *psVar26;" type_identifier (pointer_declarator "*psVar26" * identifier) ;) (declaration "undefined4 extraout_EDX;" type_identifier identifier ;) (declaration "undefined4 extraout_EDX_00;" type_identifier identifier ;) (declaration "int iVar27;" primitive_type identifier ;) (declaration "undefined **ppuVar28;" type_identifier (pointer_declarator "**ppuVar28" * (pointer_declarator "*ppuVar28" * identifier)) ;) (declaration "undefined1 *puVar29;" type_identifier (pointer_declarator "*puVar29" * identifier) ;) (declaration "undefined1 *puVar30;" type_identifier (pointer_declarator "*puVar30" * identifier) ;) (declaration "undefined1 *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined1 *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "undefined1 *puVar33;" type_identifier (pointer_declarator "*puVar33" * identifier) ;) (declaration "undefined1 *puVar34;" type_identifier (pointer_declarator "*puVar34" * identifier) ;) (declaration "byte *pbVar35;" type_identifier (pointer_declarator "*pbVar35" * identifier) ;) (declaration "byte *pbVar36;" type_identifier (pointer_declarator "*pbVar36" * identifier) ;) (declaration "undefined4 *puVar37;" type_identifier (pointer_declarator "*puVar37" * identifier) ;) (declaration "int in_GS_OFFSET;" primitive_type identifier ;) (declaration "undefined1 uVar38;" type_identifier identifier ;) (declaration "undefined1 uVar39;" type_identifier identifier ;) (declaration "byte bVar40;" type_identifier identifier ;) (declaration "__off64_t _Var41;" type_identifier identifier ;) (declaration "undefined8 uVar42;" type_identifier identifier ;) (declaration "undefined1 auStack_28c [7];" type_identifier (array_declarator "auStack_28c [7]" identifier [ number_literal ]) ;) (declaration "char local_285;" primitive_type identifier ;) (declaration "uint local_284;" type_identifier identifier ;) (declaration "undefined **local_280;" type_identifier (pointer_declarator "**local_280" * (pointer_declarator "*local_280" * identifier)) ;) (declaration "int local_27c;" primitive_type identifier ;) (declaration "uint local_278;" type_identifier identifier ;) (declaration "int local_274;" primitive_type identifier ;) (declaration "uint local_270;" type_identifier identifier ;) (declaration "code *local_26c;" type_identifier (pointer_declarator "*local_26c" * identifier) ;) (declaration "int local_268;" primitive_type identifier ;) (declaration "uint local_264;" type_identifier identifier ;) (declaration "int local_260;" primitive_type identifier ;) (declaration "code *local_25c;" type_identifier (pointer_declarator "*local_25c" * identifier) ;) (declaration "code *local_258;" type_identifier (pointer_declarator "*local_258" * identifier) ;) (declaration "code *local_254;" type_identifier (pointer_declarator "*local_254" * identifier) ;) (declaration "int local_250;" primitive_type identifier ;) (declaration "uint local_24c;" type_identifier identifier ;) (declaration "int local_248;" primitive_type identifier ;) (declaration "uint local_244;" type_identifier identifier ;) (declaration "stat64 *local_240;" type_identifier (pointer_declarator "*local_240" * identifier) ;) (declaration "uint local_23c;" type_identifier identifier ;) (declaration "stat64 *local_238;" type_identifier (pointer_declarator "*local_238" * identifier) ;) (declaration "stat64 *local_234;" type_identifier (pointer_declarator "*local_234" * identifier) ;) (declaration "char *local_230;" primitive_type (pointer_declarator "*local_230" * identifier) ;) (declaration "__ino_t *local_22c;" type_identifier (pointer_declarator "*local_22c" * identifier) ;) (declaration "int *local_228;" primitive_type (pointer_declarator "*local_228" * identifier) ;) (declaration "__ino_t local_224;" type_identifier identifier ;) (declaration "code *local_220;" type_identifier (pointer_declarator "*local_220" * identifier) ;) (declaration "code *local_21c;" type_identifier (pointer_declarator "*local_21c" * identifier) ;) (declaration "int local_218;" primitive_type identifier ;) (declaration "byte **local_214;" type_identifier (pointer_declarator "**local_214" * (pointer_declarator "*local_214" * identifier)) ;) (declaration "__ino_t local_210;" type_identifier identifier ;) (declaration "byte *local_20c;" type_identifier (pointer_declarator "*local_20c" * identifier) ;) (declaration "undefined1 *local_208;" type_identifier (pointer_declarator "*local_208" * identifier) ;) (declaration "uint local_204;" type_identifier identifier ;) (declaration "char *local_200;" primitive_type (pointer_declarator "*local_200" * identifier) ;) (declaration "uint local_1fc;" type_identifier identifier ;) (declaration "char *local_1f8;" primitive_type (pointer_declarator "*local_1f8" * identifier) ;) (declaration "char *local_1f4;" primitive_type (pointer_declarator "*local_1f4" * identifier) ;) (declaration "int *local_1f0;" primitive_type (pointer_declarator "*local_1f0" * identifier) ;) (declaration "undefined1 local_1dd;" type_identifier identifier ;) (declaration "uint local_1dc;" type_identifier identifier ;) (declaration "int local_1d8;" primitive_type identifier ;) (declaration "__ino_t local_1d4;" type_identifier identifier ;) (declaration "undefined4 local_1d0;" type_identifier identifier ;) (declaration "stat64 *local_1c4;" type_identifier (pointer_declarator "*local_1c4" * identifier) ;) (declaration "char local_1c0;" primitive_type identifier ;) (declaration "char local_1bf;" primitive_type identifier ;) (declaration "int local_1bc;" primitive_type identifier ;) (declaration "undefined1 local_1b4 [36];" type_identifier (array_declarator "local_1b4 [36]" identifier [ number_literal ]) ;) (declaration "__ino_t local_190;" type_identifier identifier ;) (declaration "undefined4 local_188;" type_identifier identifier ;) (declaration "__time_t local_174;" type_identifier identifier ;) (declaration "long local_170;" (sized_type_specifier "long" long) identifier ;) (declaration "__time_t local_16c;" type_identifier identifier ;) (declaration "long local_168;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_15c;" primitive_type identifier ;) (declaration "uint local_158;" type_identifier identifier ;) (declaration "stat64 local_154;" type_identifier identifier ;) (declaration "undefined1 local_f4 [48];" type_identifier (array_declarator "local_f4 [48]" identifier [ number_literal ]) ;) (declaration "int local_c4;" primitive_type identifier ;) (declaration "int local_c0;" primitive_type identifier ;) (declaration "uint local_bc;" type_identifier identifier ;) (declaration "int local_b8;" primitive_type identifier ;) (declaration "int local_9c;" primitive_type identifier ;) (declaration "uint local_98;" type_identifier identifier ;) (declaration "stat64 local_94;" type_identifier identifier ;) (declaration "__time_t local_30;" type_identifier identifier ;) (declaration "long local_2c;" (sized_type_specifier "long" long) identifier ;) (declaration "__time_t local_28;" type_identifier identifier ;) (declaration "long local_24;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_20;" primitive_type identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar40 = 0;" (assignment_expression "bVar40 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x15deb;" (assignment_expression "uStack_14 = 0x15deb" identifier = number_literal) ;) (expression_statement "ppuVar28 = &__DT_PLTGOT;" (assignment_expression "ppuVar28 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "local_200 = param_1;" (assignment_expression "local_200 = param_1" identifier = identifier) ;) (expression_statement "local_1f8 = param_2;" (assignment_expression "local_1f8 = param_2" identifier = identifier) ;) (expression_statement "local_22c = param_4;" (assignment_expression "local_22c = param_4" identifier = identifier) ;) (expression_statement "local_220 = (code *)param_9;" (assignment_expression "local_220 = (code *)param_9" identifier = (cast_expression "(code *)param_9" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_21c = param_8;" (assignment_expression "local_21c = param_8" identifier = identifier) ;) (expression_statement "local_228 = param_5;" (assignment_expression "local_228 = param_5" identifier = identifier) ;) (expression_statement "local_208 = param_10;" (assignment_expression "local_208 = param_10" identifier = identifier) ;) (expression_statement "local_1f0 = param_6;" (assignment_expression "local_1f0 = param_6" identifier = identifier) ;) (expression_statement "local_1fc = param_7;" (assignment_expression "local_1fc = param_7" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,param_3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,param_3)" identifier (argument_list "(local_1f4._1_3_,param_3)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(char)param_7);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(char)param_7)" identifier = (call_expression "CONCAT31(local_224._1_3_,(char)param_7)" identifier (argument_list "(local_224._1_3_,(char)param_7)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(char)param_7" ( (type_descriptor "char" primitive_type) ) identifier) )))) ;) (expression_statement "local_20 = *(int *)(in_GS_OFFSET + 0x14);" (assignment_expression "local_20 = *(int *)(in_GS_OFFSET + 0x14)" identifier = (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*param_9 = 0;" (assignment_expression "*param_9 = 0" (pointer_expression "*param_9" * identifier) = number_literal) ;) (expression_statement "iVar10 = param_6[0xd];" (assignment_expression "iVar10 = param_6[0xd]" identifier = (subscript_expression "param_6[0xd]" identifier [ number_literal ])) ;) (if_statement "if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }" if (parenthesized_expression "((char)param_6[6] != '\0')" ( (binary_expression "(char)param_6[6] != '\0'" (cast_expression "(char)param_6[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "param_6[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }" { (if_statement "if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }" { (labeled_statement "LAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);" statement_identifier : (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,iVar10 == 0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,iVar10 == 0)" identifier (argument_list "(local_1f4._1_3_,iVar10 == 0)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (binary_expression "iVar10 == 0" identifier == number_literal) ))))) ;)) (if_statement "if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *local_208 = iVar10 == 0;\n      }" { (expression_statement "*local_208 = iVar10 == 0;" (assignment_expression "*local_208 = iVar10 == 0" (pointer_expression "*local_208" * identifier) = (binary_expression "iVar10 == 0" identifier == number_literal)) ;) })) (goto_statement "goto LAB_00015e8b;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6])" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(char)param_6[6])" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(char)param_6[6])" identifier (argument_list "(local_1f4._1_3_,(char)param_6[6])" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(char)param_6[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "param_6[6]" identifier [ number_literal ])) ))))) ;) (expression_statement "iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);" (assignment_expression "iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c)" identifier = (call_expression "FUN_000209f0(0xffffff9c,param_1,0xffffff9c)" identifier (argument_list "(0xffffff9c,param_1,0xffffff9c)" ( number_literal , identifier , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }" { (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = *piVar14;" (assignment_expression "iVar10 = *piVar14" identifier = (pointer_expression "*piVar14" * identifier)) ;) (goto_statement "goto LAB_00015e6f;" goto statement_identifier ;) })) (if_statement "if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_208 = 1;\n    }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) })) (labeled_statement "LAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x31) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x31) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x31)" * (cast_expression "(char *)((int)local_1f0 + 0x31)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x31)" ( (binary_expression "(int)local_1f0 + 0x31" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00015ef0;" goto statement_identifier ;) }))) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (expression_statement "iVar8 = local_1f0[1];" (assignment_expression "iVar8 = local_1f0[1]" identifier = (subscript_expression "local_1f0[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar20 = local_1f8;" (assignment_expression "pcVar20 = local_1f8" identifier = identifier) ;) (labeled_statement "joined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" statement_identifier : (if_statement "if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" if (parenthesized_expression "(iVar8 == 2)" ( (binary_expression "iVar8 == 2" identifier == number_literal) )) (compound_statement "{\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" { (expression_statement "iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);" (assignment_expression "iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4)" identifier = (call_expression "__lxstat64(3,pcVar20,(stat64 *)local_1b4)" identifier (argument_list "(3,pcVar20,(stat64 *)local_1b4)" ( number_literal , identifier , (cast_expression "(stat64 *)local_1b4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) }) (else_clause "else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" else (compound_statement "{\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" { (expression_statement "iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);" (assignment_expression "iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4)" identifier = (call_expression "__xstat64(3,pcVar20,(stat64 *)local_1b4)" identifier (argument_list "(3,pcVar20,(stat64 *)local_1b4)" ( number_literal , identifier , (cast_expression "(stat64 *)local_1b4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) })))) (if_statement "if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }" { (expression_statement "local_204 = local_1b4._16_4_;" (assignment_expression "local_204 = local_1b4._16_4_" identifier = (field_expression "local_1b4._16_4_" identifier . field_identifier)) ;) (if_statement "if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }" if (parenthesized_expression "(((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0'))" ( (binary_expression "((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')" (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2a) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2a) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2a)" * (cast_expression "(char *)((int)local_1f0 + 0x2a)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2a)" ( (binary_expression "(int)local_1f0 + 0x2a" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x19) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x19) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x19)" * (cast_expression "(char *)((int)local_1f0 + 0x19)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x19)" ( (binary_expression "(int)local_1f0 + 0x19" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          dcgettext();\n        }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n          dcgettext();\n        }" else (compound_statement "{\n          dcgettext();\n        }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_00015ef0;" goto statement_identifier ;) })) (expression_statement "puVar30 = &stack0xfffffd68;" (assignment_expression "puVar30 = &stack0xfffffd68" identifier = (pointer_expression "&stack0xfffffd68" & identifier)) ;) (labeled_statement "LAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;" statement_identifier : (expression_statement "*(undefined4 *)(puVar30 + -4) = 4;" (assignment_expression "*(undefined4 *)(puVar30 + -4) = 4" (pointer_expression "*(undefined4 *)(puVar30 + -4)" * (cast_expression "(undefined4 *)(puVar30 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + -4)" ( (binary_expression "puVar30 + -4" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "*(undefined4 *)(puVar30 + -8) = 0x16215;" (assignment_expression "*(undefined4 *)(puVar30 + -8) = 0x16215" (pointer_expression "*(undefined4 *)(puVar30 + -8)" * (cast_expression "(undefined4 *)(puVar30 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + -8)" ( (binary_expression "puVar30 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar31 = puVar30 + 4;" (assignment_expression "puVar31 = puVar30 + 4" identifier = (binary_expression "puVar30 + 4" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar30 + 4) = 5;" (assignment_expression "*(undefined4 *)(puVar30 + 4) = 5" (pointer_expression "*(undefined4 *)(puVar30 + 4)" * (cast_expression "(undefined4 *)(puVar30 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar30 + 4)" ( (binary_expression "puVar30 + 4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193)" identifier = (cast_expression "(undefined **)((int)ppuVar28 + -0xb193)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar28 + -0xb193)" ( (binary_expression "(int)ppuVar28 + -0xb193" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;" statement_identifier : (expression_statement "*(undefined ***)(puVar31 + -4) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar31 + -4) = ppuVar28" (pointer_expression "*(undefined ***)(puVar31 + -4)" * (cast_expression "(undefined ***)(puVar31 + -4)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar31 + -4)" ( (binary_expression "puVar31 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar31 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar31 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar31 + -8)" * (cast_expression "(undefined4 *)(puVar31 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -8)" ( (binary_expression "puVar31 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = 0x1622a;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = 0x1622a" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" * (cast_expression "(undefined4 *)(puVar31 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0xc)" ( (binary_expression "puVar31 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = 0x16231;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = 0x16231" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" * (cast_expression "(undefined4 *)(puVar31 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0xc)" ( (binary_expression "puVar31 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" * (cast_expression "(undefined4 *)(puVar31 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0xc)" ( (binary_expression "puVar31 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar31 + -0x10) = uVar12;" (assignment_expression "*(undefined4 *)(puVar31 + -0x10) = uVar12" (pointer_expression "*(undefined4 *)(puVar31 + -0x10)" * (cast_expression "(undefined4 *)(puVar31 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x10)" ( (binary_expression "puVar31 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar31 + -0x14) = *piVar14;" (assignment_expression "*(int *)(puVar31 + -0x14) = *piVar14" (pointer_expression "*(int *)(puVar31 + -0x14)" * (cast_expression "(int *)(puVar31 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x14)" ( (binary_expression "puVar31 + -0x14" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar31 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar31 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar31 + -0x18)" * (cast_expression "(undefined4 *)(puVar31 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x18)" ( (binary_expression "puVar31 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;" (assignment_expression "*(undefined **)(puVar31 + -0x1c) = &UNK_0001623c" (pointer_expression "*(undefined **)(puVar31 + -0x1c)" * (cast_expression "(undefined **)(puVar31 + -0x1c)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + -0x1c)" ( (binary_expression "puVar31 + -0x1c" identifier + number_literal) )))) = (pointer_expression "&UNK_0001623c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;" statement_identifier : (if_statement "if (iVar10 == 0) goto LAB_000161c0;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000161c0;" goto statement_identifier ;))) (if_statement "if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }" if (parenthesized_expression "((iVar10 != 0x11) || (local_1f0[2] != 2))" ( (binary_expression "(iVar10 != 0x11) || (local_1f0[2] != 2)" (parenthesized_expression "(iVar10 != 0x11)" ( (binary_expression "iVar10 != 0x11" identifier != number_literal) )) || (parenthesized_expression "(local_1f0[2] != 2)" ( (binary_expression "local_1f0[2] != 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }" { (expression_statement "iVar8 = local_1f0[1];" (assignment_expression "iVar8 = local_1f0[1]" identifier = (subscript_expression "local_1f0[1]" identifier [ number_literal ])) ;) (expression_statement "pcVar20 = local_200;" (assignment_expression "pcVar20 = local_200" identifier = identifier) ;) (goto_statement "goto joined_r0x00015eac;" goto statement_identifier ;) })) (labeled_statement "LAB_00015ef0:\n  puVar32 = auStack_28c;" statement_identifier : (expression_statement "puVar32 = auStack_28c;" (assignment_expression "puVar32 = auStack_28c" identifier = identifier) ;)) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }" if (parenthesized_expression "(((byte)local_1fc != '\0') && (local_1f0[0x10] != 0))" ( (binary_expression "((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)" (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(local_1f0[0x10] != 0)" ( (binary_expression "local_1f0[0x10] != 0" (subscript_expression "local_1f0[0x10]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }" { (expression_statement "local_20c = local_1b4;" (assignment_expression "local_20c = local_1b4" identifier = identifier) ;) (if_statement "if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }" if (parenthesized_expression "(((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0'))))" ( (binary_expression "((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))" (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))" ( (parenthesized_expression "(*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0'))" ( (binary_expression "*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')" (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" * identifier) == number_literal) && (parenthesized_expression "(cVar6 = FUN_0001d250(), cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_0001d250(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_0001d250()" identifier = (call_expression "FUN_0001d250()" identifier (argument_list "()" ( )))) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) ))) )) (compound_statement "{\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" identifier (argument_list "(0,0,uVar11)" ( number_literal , number_literal , identifier ))) ;) })) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_20c = (byte *)0x1;" (assignment_expression "local_20c = (byte *)0x1" identifier = (cast_expression "(byte *)0x1" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }" if (parenthesized_expression "(local_1f0[1] != 4)" ( (binary_expression "local_1f0[1] != 4" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }" { (expression_statement "local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);" (assignment_expression "local_20c = (byte *)(local_1f0[1] == 3 & local_1fc)" identifier = (cast_expression "(byte *)(local_1f0[1] == 3 & local_1fc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0[1] == 3 & local_1fc)" ( (binary_expression "local_1f0[1] == 3 & local_1fc" (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) & identifier) )))) ;) })) (if_statement "if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }" { (if_statement "if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }" if (parenthesized_expression "((iVar10 != 0x11) || (local_1f0[2] != 2))" ( (binary_expression "(iVar10 != 0x11) || (local_1f0[2] != 2)" (parenthesized_expression "(iVar10 != 0x11)" ( (binary_expression "iVar10 != 0x11" identifier != number_literal) )) || (parenthesized_expression "(local_1f0[2] != 2)" ( (binary_expression "local_1f0[2] != 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }" { (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" if (parenthesized_expression "(uVar9 == 0x8000)" ( (binary_expression "uVar9 == 0x8000" identifier == number_literal) )) (compound_statement "{\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }" { (labeled_statement "LAB_00016b80:\n        iVar8 = 0x100;" statement_identifier : (expression_statement "iVar8 = 0x100;" (assignment_expression "iVar8 = 0x100" identifier = number_literal) ;)) (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6])" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6])" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,(char)local_1f0[6])" identifier (argument_list "(local_214._1_3_,(char)local_1f0[6])" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) ))))) ;) (if_statement "if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }" if (parenthesized_expression "(((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0))" ( (binary_expression "((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)" (parenthesized_expression "((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0'))" ( (binary_expression "(((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')" (parenthesized_expression "(((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0'))" ( (binary_expression "((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')" (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')" ( (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0'" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" identifier (argument_list "(local_214._1_3_,(char)local_1f0[0xb])" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) ))))) , (binary_expression "(char)local_1f0[0xb] == '\0'" (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence '))) ))) )) && (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')" ( (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0'" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" identifier (argument_list "(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) , (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ))) )) && (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)" ( (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,1)" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,1)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,1)" identifier (argument_list "(local_214._1_3_,1)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , number_literal ))))) , (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" * identifier) == number_literal)) ))) )) (compound_statement "{\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }" { (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" identifier (argument_list "(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" ( (field_expression "local_214._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;" (assignment_expression "iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8" identifier = (binary_expression "(uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8" (call_expression "(uint)(*(char *)((int)local_1f0 + 0x15) != '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(char *)((int)local_1f0 + 0x15) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) << number_literal)) ;) })) }) (else_clause "else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" else (compound_statement "{\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" { (expression_statement "iVar8 = 0x100;" (assignment_expression "iVar8 = 0x100" identifier = number_literal) ;) (expression_statement "bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;" (assignment_expression "bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1" identifier = (binary_expression "(uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1" (parenthesized_expression "(uVar9 == 0xa000 || uVar9 == 0x4000)" ( (binary_expression "uVar9 == 0xa000 || uVar9 == 0x4000" (binary_expression "uVar9 == 0xa000" identifier == number_literal) || (binary_expression "uVar9 == 0x4000" identifier == number_literal)) )) | (binary_expression "*(byte *)(local_1f0 + 5) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) )))) ^ number_literal))) ;) (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25)" identifier = (cast_expression "(byte **)CONCAT31(local_214._1_3_,bVar25)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "CONCAT31(local_214._1_3_,bVar25)" identifier (argument_list "(local_214._1_3_,bVar25)" ( (field_expression "local_214._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 == 0) goto LAB_00016b80;" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00016b80;" goto statement_identifier ;)) }))) (expression_statement "iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);" (assignment_expression "iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8)" identifier = (call_expression "__fxstatat64(3,-100,local_1f8,&local_154,iVar8)" identifier (argument_list "(3,-100,local_1f8,&local_154,iVar8)" ( number_literal , number_literal , identifier , (pointer_expression "&local_154" & identifier) , identifier )))) ;) (if_statement "if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }" { (expression_statement "local_230 = (char *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (char *)((uint)local_230 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_230 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230 & 0xffffff00)" ( (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) }) (else_clause "else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" else (compound_statement "{\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" { (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }" if (parenthesized_expression "(*piVar14 == 0x28)" ( (binary_expression "*piVar14 == 0x28" (pointer_expression "*piVar14" * identifier) == number_literal) )) (compound_statement "{\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }" { (if_statement "if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x16) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x16) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x16)" * (cast_expression "(char *)((int)local_1f0 + 0x16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017070;" goto statement_identifier ;)) (expression_statement "local_230 = (char *)((uint)local_230._1_3_ << 8);" (assignment_expression "local_230 = (char *)((uint)local_230._1_3_ << 8)" identifier = (cast_expression "(char *)((uint)local_230._1_3_ << 8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230._1_3_ << 8)" ( (binary_expression "(uint)local_230._1_3_ << 8" (cast_expression "(uint)local_230._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_230._1_3_" identifier . field_identifier)) << number_literal) )))) ;) }) (else_clause "else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }" else (compound_statement "{\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }" { (expression_statement "local_230 = (char *)CONCAT31(local_230._1_3_,1);" (assignment_expression "local_230 = (char *)CONCAT31(local_230._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_230._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_230._1_3_,1)" identifier (argument_list "(local_230._1_3_,1)" ( (field_expression "local_230._1_3_" identifier . field_identifier) , number_literal ))))) ;) (if_statement "if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (compound_statement "{\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }" { (labeled_statement "LAB_00017070:\n            local_1f0 = piVar14;" statement_identifier : (expression_statement "local_1f0 = piVar14;" (assignment_expression "local_1f0 = piVar14" identifier = identifier) ;)) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*local_1f0,uVar11);" (call_expression "error(0,*local_1f0,uVar11)" identifier (argument_list "(0,*local_1f0,uVar11)" ( number_literal , (pointer_expression "*local_1f0" * identifier) , identifier ))) ;) })) }))) (expression_statement "local_214 = (byte **)((uint)local_214 & 0xffffff00);" (assignment_expression "local_214 = (byte **)((uint)local_214 & 0xffffff00)" identifier = (cast_expression "(byte **)((uint)local_214 & 0xffffff00)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((uint)local_214 & 0xffffff00)" ( (binary_expression "(uint)local_214 & 0xffffff00" (cast_expression "(uint)local_214" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(iVar10 != 0x11)" ( (binary_expression "iVar10 != 0x11" identifier != number_literal) )) (compound_statement "{\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" { (expression_statement "uVar38 = local_230._0_1_;" (assignment_expression "uVar38 = local_230._0_1_" identifier = (field_expression "local_230._0_1_" identifier . field_identifier)) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar38)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,uVar38)" identifier (argument_list "(local_1f4._1_3_,uVar38)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) }))) (if_statement "if (local_1f0[2] == 2) goto LAB_00016048;" if (parenthesized_expression "(local_1f0[2] == 2)" ( (binary_expression "local_1f0[2] == 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (if_statement "if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }" if (parenthesized_expression "((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev))" ( (binary_expression "(local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)" (parenthesized_expression "(local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino)" ( (binary_expression "local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino" (binary_expression "local_158 == local_154.st_ino._4_4_" identifier == (field_expression "local_154.st_ino._4_4_" (field_expression "local_154.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "local_15c == (int)local_154.st_ino" identifier == (cast_expression "(int)local_154.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_ino" identifier . field_identifier)))) )) && (parenthesized_expression "(local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)" ( (binary_expression "local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev" (binary_expression "local_1b4._4_4_ == local_154.st_dev._4_4_" (field_expression "local_1b4._4_4_" identifier . field_identifier) == (field_expression "local_154.st_dev._4_4_" (field_expression "local_154.st_dev" identifier . field_identifier) . field_identifier)) && (binary_expression "(byte *)local_1b4._0_4_ == (byte *)local_154.st_dev" (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)) == (cast_expression "(byte *)local_154.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_154.st_dev" identifier . field_identifier)))) ))) )) (compound_statement "{\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }" { (expression_statement "cVar6 = *(char *)((int)local_1f0 + 0x17);" (assignment_expression "cVar6 = *(char *)((int)local_1f0 + 0x17)" identifier = (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" { (if_statement "if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }" if (parenthesized_expression "(local_1f0[1] == 2)" ( (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }" { (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (expression_statement "bVar4 = true;" (assignment_expression "bVar4 = true" identifier = true) ;) (goto_statement "goto LAB_000175fc;" goto statement_identifier ;) })) (expression_statement "local_234 = (stat64 *)local_f4;" (assignment_expression "local_234 = (stat64 *)local_f4" identifier = (cast_expression "(stat64 *)local_f4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar10 = __lxstat64(3,local_1f8,local_234);" (assignment_expression "iVar10 = __lxstat64(3,local_1f8,local_234)" identifier = (call_expression "__lxstat64(3,local_1f8,local_234)" identifier (argument_list "(3,local_1f8,local_234)" ( number_literal , identifier , identifier )))) ;) (if_statement "if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }" { (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" identifier = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "iVar10 = __lxstat64(3,local_200,local_240);" (assignment_expression "iVar10 = __lxstat64(3,local_200,local_240)" identifier = (call_expression "__lxstat64(3,local_200,local_240)" identifier (argument_list "(3,local_200,local_240)" ( number_literal , identifier , identifier )))) ;) (if_statement "if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;" if (parenthesized_expression "((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0'))))" ( (binary_expression "(iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))" ( (parenthesized_expression "((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0'))" ( (binary_expression "(bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')" (parenthesized_expression "(bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000))" ( (comma_expression "bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (assignment_expression "bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" identifier = (binary_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" (parenthesized_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c)" ( (binary_expression "local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c" (binary_expression "local_94.st_ino._4_4_ == local_98" (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier) == identifier) && (binary_expression "(int)local_94.st_ino == local_9c" (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)) == identifier)) )) && (parenthesized_expression "((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" ( (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_" (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_" (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier)) == (cast_expression "(byte *)local_f4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._0_4_" identifier . field_identifier))) && (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "local_f4._4_4_" identifier . field_identifier))) )))) , (comma_expression "psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (assignment_expression "psVar26 = local_240" identifier = identifier) , (binary_expression "(local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (binary_expression "(local_94.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_94.st_mode & 0xf000)" ( (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) || (parenthesized_expression "((local_f4._16_4_ & 0xf000) != 0xa000)" ( (binary_expression "(local_f4._16_4_ & 0xf000) != 0xa000" (parenthesized_expression "(local_f4._16_4_ & 0xf000)" ( (binary_expression "local_f4._16_4_ & 0xf000" (field_expression "local_f4._16_4_" identifier . field_identifier) & number_literal) )) != number_literal) ))))) )) || (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (goto_statement "goto LAB_0001761e;" goto statement_identifier ;)) })) (labeled_statement "LAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" statement_identifier : (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" ( (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (labeled_statement "LAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);" statement_identifier : (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,cVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,cVar6)" identifier (argument_list "(local_1f4._1_3_,cVar6)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;)) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (if_statement "if (local_1f0[1] != 2) goto LAB_00016048;" if (parenthesized_expression "(local_1f0[1] != 2)" ( (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (expression_statement "bVar4 = false;" (assignment_expression "bVar4 = false" identifier = false) ;) (labeled_statement "LAB_000175fc:\n      local_234 = &local_154;" statement_identifier : (expression_statement "local_234 = &local_154;" (assignment_expression "local_234 = &local_154" identifier = (pointer_expression "&local_154" & identifier)) ;)) (expression_statement "psVar26 = (stat64 *)local_1b4;" (assignment_expression "psVar26 = (stat64 *)local_1b4" identifier = (cast_expression "(stat64 *)local_1b4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" if (parenthesized_expression "(((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000))" ( (binary_expression "((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((local_1b4._16_4_ & 0xf000) != 0xa000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) != 0xa000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) != number_literal) )) || (parenthesized_expression "((local_154.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_154.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" { (labeled_statement "LAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" statement_identifier : (if_statement "if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" if (parenthesized_expression "(*local_1f0 != 0)" ( (binary_expression "*local_1f0 != 0" (pointer_expression "*local_1f0" * identifier) != number_literal) )) (compound_statement "{\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" { (if_statement "if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" { (expression_statement "bVar25 = FUN_00020ea0();" (assignment_expression "bVar25 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar25 = bVar25 ^ 1;" (assignment_expression "bVar25 = bVar25 ^ 1" identifier = (binary_expression "bVar25 ^ 1" identifier ^ number_literal)) ;) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) })) (if_statement "if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;" if (parenthesized_expression "(((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))" ( (binary_expression "((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000)" (parenthesized_expression "((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000))" ( (binary_expression "(((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "(((char)local_1f0[6] != '\0') || (local_1f0[1] == 2))" ( (binary_expression "((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)" (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_1f0[1] == 2)" ( (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) ))) )) || (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) ))) )) || (parenthesized_expression "((local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "(local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" ( (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" identifier -> field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_000181e8;" goto statement_identifier ;)) (goto_statement "goto LAB_00017680;" goto statement_identifier ;) }))) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;) (if_statement "if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" if (parenthesized_expression "((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0'))" ( (binary_expression "(cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')" (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }" { (if_statement "if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }" if (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }" { (labeled_statement "LAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;" statement_identifier : (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;)) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }" { (labeled_statement "LAB_0001849c:\n              cVar6 = (char)local_1f0[6];" statement_identifier : (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;)) }) (else_clause "else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" else (compound_statement "{\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" { (labeled_statement "LAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;" statement_identifier : (if_statement "if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;" if (parenthesized_expression "((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev))" ( (binary_expression "(*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)" (parenthesized_expression "(*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino)" ( (binary_expression "*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino" (binary_expression "*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4)" (pointer_expression "*(int *)((int)&psVar26->st_ino + 4)" * (cast_expression "(int *)((int)&psVar26->st_ino + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar26->st_ino + 4)" ( (binary_expression "(int)&psVar26->st_ino + 4" (cast_expression "(int)&psVar26->st_ino" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar26->st_ino" & (field_expression "psVar26->st_ino" identifier -> field_identifier))) + number_literal) )))) != (pointer_expression "*(int *)((int)&local_234->st_ino + 4)" * (cast_expression "(int *)((int)&local_234->st_ino + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_ino + 4)" ( (binary_expression "(int)&local_234->st_ino + 4" (cast_expression "(int)&local_234->st_ino" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_ino" & (field_expression "local_234->st_ino" identifier -> field_identifier))) + number_literal) ))))) || (binary_expression "(int)psVar26->st_ino != (int)local_234->st_ino" (cast_expression "(int)psVar26->st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar26->st_ino" identifier -> field_identifier)) != (cast_expression "(int)local_234->st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_234->st_ino" identifier -> field_identifier)))) )) || (parenthesized_expression "(*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)" ( (binary_expression "*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev" (binary_expression "*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4)" (pointer_expression "*(int *)((int)&psVar26->st_dev + 4)" * (cast_expression "(int *)((int)&psVar26->st_dev + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar26->st_dev + 4)" ( (binary_expression "(int)&psVar26->st_dev + 4" (cast_expression "(int)&psVar26->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar26->st_dev" & (field_expression "psVar26->st_dev" identifier -> field_identifier))) + number_literal) )))) != (pointer_expression "*(int *)((int)&local_234->st_dev + 4)" * (cast_expression "(int *)((int)&local_234->st_dev + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_dev + 4)" ( (binary_expression "(int)&local_234->st_dev + 4" (cast_expression "(int)&local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_dev" & (field_expression "local_234->st_dev" identifier -> field_identifier))) + number_literal) ))))) || (binary_expression "(int)psVar26->st_dev != (int)local_234->st_dev" (cast_expression "(int)psVar26->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar26->st_dev" identifier -> field_identifier)) != (cast_expression "(int)local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "local_234->st_dev" identifier -> field_identifier)))) ))) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;))) (expression_statement "cVar6 = *(char *)((int)local_1f0 + 0x17);" (assignment_expression "cVar6 = *(char *)((int)local_1f0 + 0x17)" identifier = (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (cVar6 != '\0') goto LAB_00018440;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00018440;" goto statement_identifier ;)) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;) }))) (goto_statement "goto LAB_000184a6;" goto statement_identifier ;) })) }) (else_clause "else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" else (compound_statement "{\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" { (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) (if_statement "if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" if (parenthesized_expression "((bVar3) && (1 < local_234->st_nlink))" ( (binary_expression "(bVar3) && (1 < local_234->st_nlink)" (parenthesized_expression "(bVar3)" ( identifier )) && (parenthesized_expression "(1 < local_234->st_nlink)" ( (binary_expression "1 < local_234->st_nlink" number_literal < (field_expression "local_234->st_nlink" identifier -> field_identifier)) ))) )) (compound_statement "{\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" { (expression_statement "local_238 = psVar26;" (assignment_expression "local_238 = psVar26" identifier = identifier) ;) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" { (expression_statement "psVar26 = local_238;" (assignment_expression "psVar26 = local_238" identifier = identifier) ;) (if_statement "if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;" if (parenthesized_expression "((local_238->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_238->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_238->st_mode & 0xf000)" ( (binary_expression "local_238->st_mode & 0xf000" (field_expression "local_238->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_0001847d;" goto statement_identifier ;)) (goto_statement "goto LAB_0001849c;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier (argument_list "(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ))))) ;) (expression_statement "bVar25 = *(byte *)(local_1f0 + 6) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 6) ^ 1" identifier = (binary_expression "*(byte *)(local_1f0 + 6) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ^ number_literal)) ;) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) })) (if_statement "if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;" if (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000187a8;" goto statement_identifier ;)) (labeled_statement "LAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" statement_identifier : (if_statement "if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" if (parenthesized_expression "((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0))" ( (binary_expression "(((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)" (parenthesized_expression "(((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink))" ( (binary_expression "((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)" (parenthesized_expression "((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000))" ( (binary_expression "(cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)" (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0xa000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0xa000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) && (parenthesized_expression "(1 < local_234->st_nlink)" ( (binary_expression "1 < local_234->st_nlink" number_literal < (field_expression "local_234->st_nlink" identifier -> field_identifier)) ))) )) && (parenthesized_expression "(local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)" ( (comma_expression "local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "local_238 = psVar26" identifier = identifier) , (comma_expression "pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "pcVar20 = canonicalize_file_name(local_200)" identifier = (call_expression "canonicalize_file_name(local_200)" identifier (argument_list "(local_200)" ( identifier )))) , (comma_expression "psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "psVar26 = local_238" identifier = identifier) , (binary_expression "pcVar20 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))))) ))) )) (compound_statement "{\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" { (expression_statement "bVar25 = FUN_00020ea0();" (assignment_expression "bVar25 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar25 = bVar25 ^ 1;" (assignment_expression "bVar25 = bVar25 ^ 1" identifier = (binary_expression "bVar25 ^ 1" identifier ^ number_literal)) ;) (expression_statement "free(pcVar20);" (call_expression "free(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier ))) ;) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_00018431;" goto statement_identifier ;) }))) }))) (if_statement "if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" if (parenthesized_expression "(((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           )" ( (binary_expression "((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((char)local_1f0[0xb] == '\0')" ( (binary_expression "(char)local_1f0[0xb] == '\0'" (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" ( (comma_expression "local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) , (binary_expression "((uint)local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) != number_literal)) ))) )) (compound_statement "{\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" { (if_statement "if (local_1f0[1] != 2) goto LAB_00017680;" if (parenthesized_expression "(local_1f0[1] != 2)" ( (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_00017680;" goto statement_identifier ;)) (if_statement "if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" if (parenthesized_expression "((psVar26->st_mode & 0xf000) == 0xa000)" ( (binary_expression "(psVar26->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" ( (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }" { (expression_statement "iVar10 = __xstat64(3,local_200,&local_94);" (assignment_expression "iVar10 = __xstat64(3,local_200,&local_94)" identifier = (call_expression "__xstat64(3,local_200,&local_94)" identifier (argument_list "(3,local_200,&local_94)" ( number_literal , identifier , (pointer_expression "&local_94" & identifier) )))) ;) (if_statement "if (iVar10 != 0) goto LAB_00016048;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) }) (else_clause "else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" else (compound_statement "{\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" { (expression_statement "ppbVar17 = (byte **)&local_94;" (assignment_expression "ppbVar17 = (byte **)&local_94" identifier = (cast_expression "(byte **)&local_94" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_94" & identifier))) ;) (for_statement "for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }" for ( (assignment_expression "iVar10 = 0x18" identifier = number_literal) ; (binary_expression "iVar10 != 0" identifier != number_literal) ; (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ) (compound_statement "{\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }" { (expression_statement "*ppbVar17 = *(byte **)&psVar26->st_dev;" (assignment_expression "*ppbVar17 = *(byte **)&psVar26->st_dev" (pointer_expression "*ppbVar17" * identifier) = (pointer_expression "*(byte **)&psVar26->st_dev" * (cast_expression "(byte **)&psVar26->st_dev" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&psVar26->st_dev" & (field_expression "psVar26->st_dev" identifier -> field_identifier))))) ;) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;" (assignment_expression "ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "ppbVar17 + (uint)bVar40 * -2 + 1" (binary_expression "ppbVar17 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) }))) (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" identifier = (cast_expression "(stat64 *)local_234->st_mode" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_234->st_mode" identifier -> field_identifier))) ;) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" if (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" ( (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" ( (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_234->st_mode" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }" { (expression_statement "iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);" (assignment_expression "iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4)" identifier = (call_expression "__xstat64(3,local_1f8,(stat64 *)local_f4)" identifier (argument_list "(3,local_1f8,(stat64 *)local_f4)" ( number_literal , identifier , (cast_expression "(stat64 *)local_f4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (iVar10 != 0) goto LAB_00016048;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016048;" goto statement_identifier ;)) }) (else_clause "else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" else (compound_statement "{\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" { (expression_statement "psVar26 = local_234;" (assignment_expression "psVar26 = local_234" identifier = identifier) ;) (expression_statement "puVar37 = (undefined4 *)local_f4;" (assignment_expression "puVar37 = (undefined4 *)local_f4" identifier = (cast_expression "(undefined4 *)local_f4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (for_statement "for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }" for ( (assignment_expression "iVar10 = 0x18" identifier = number_literal) ; (binary_expression "iVar10 != 0" identifier != number_literal) ; (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ) (compound_statement "{\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }" { (expression_statement "*puVar37 = (int)psVar26->st_dev;" (assignment_expression "*puVar37 = (int)psVar26->st_dev" (pointer_expression "*puVar37" * identifier) = (cast_expression "(int)psVar26->st_dev" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar26->st_dev" identifier -> field_identifier))) ;) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "puVar37 = puVar37 + (uint)bVar40 * -2 + 1;" (assignment_expression "puVar37 = puVar37 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "puVar37 + (uint)bVar40 * -2 + 1" (binary_expression "puVar37 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) }))) (if_statement "if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" if (parenthesized_expression "((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_))" ( (binary_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)" (parenthesized_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c)" ( (binary_expression "local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c" (binary_expression "local_94.st_ino._4_4_ == local_98" (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier) == identifier) && (binary_expression "(int)local_94.st_ino == local_9c" (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)) == identifier)) )) && (parenthesized_expression "(local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)" ( (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_" (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) == (field_expression "local_f4._4_4_" identifier . field_identifier)) && (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_" (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier)) == (cast_expression "(byte *)local_f4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._0_4_" identifier . field_identifier)))) ))) )) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" { (if_statement "if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017680;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" identifier (argument_list "(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (binary_expression "(local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" ( (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" identifier -> field_identifier) & number_literal) )) != number_literal) ))))) ;) })) })) (goto_statement "goto LAB_00016048;" goto statement_identifier ;) })) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }" { (if_statement "if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;" if (parenthesized_expression "((*local_1f0 != 0) || (!bVar4))" ( (binary_expression "(*local_1f0 != 0) || (!bVar4)" (parenthesized_expression "(*local_1f0 != 0)" ( (binary_expression "*local_1f0 != 0" (pointer_expression "*local_1f0" * identifier) != number_literal) )) || (parenthesized_expression "(!bVar4)" ( (unary_expression "!bVar4" ! identifier) ))) )) (goto_statement "goto LAB_000181e8;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" identifier (argument_list "(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ))))) ;) (expression_statement "cVar6 = '\x01';" (assignment_expression "cVar6 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "bVar25 = *(byte *)(local_1f0 + 6) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 6) ^ 1" identifier = (binary_expression "*(byte *)(local_1f0 + 6) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 6)" * (cast_expression "(byte *)(local_1f0 + 6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 6)" ( (binary_expression "local_1f0 + 6" identifier + number_literal) )))) ^ number_literal)) ;) (labeled_statement "LAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;" statement_identifier : (if_statement "if (bVar25 != 0) goto LAB_00018440;" if (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00018440;" goto statement_identifier ;))) })) (labeled_statement "LAB_00017680:\n      FUN_000203c0();" statement_identifier : (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;)) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_000176b3:\n      uVar11 = dcgettext();" statement_identifier : (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;)) (goto_statement "goto LAB_000176c0;" goto statement_identifier ;) })) (expression_statement "local_230 = (char *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (char *)((uint)local_230 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_230 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_230 & 0xffffff00)" ( (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "local_214 = (byte **)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (byte **)((uint)local_214._1_3_ << 8)" identifier = (cast_expression "(byte **)((uint)local_214._1_3_ << 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((uint)local_214._1_3_ << 8)" ( (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_214._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (labeled_statement "LAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2d) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2d) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2d)" * (cast_expression "(char *)((int)local_1f0 + 0x2d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2d)" ( (binary_expression "(int)local_1f0 + 0x2d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" { (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00017420;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017420;" goto statement_identifier ;)) (if_statement "if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }" if (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }" { (labeled_statement "LAB_00016ca2:\n        puVar34 = auStack_28c;" statement_identifier : (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;)) (if_statement "if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;" if (parenthesized_expression "((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))" ( (binary_expression "(local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')))" (parenthesized_expression "(local_1f0[2] == 2)" ( (binary_expression "local_1f0[2] == 2" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) == number_literal) )) || (parenthesized_expression "((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')))" ( (parenthesized_expression "(local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))" ( (binary_expression "local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')" (binary_expression "local_1f0[2] == 3" (subscript_expression "local_1f0[2]" identifier [ number_literal ]) == number_literal) && (parenthesized_expression "(cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')" ( (comma_expression "cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'" (assignment_expression "cVar6 = FUN_00014de0()" identifier = (call_expression "FUN_00014de0()" identifier (argument_list "()" ( )))) , (comma_expression "puVar34 = auStack_28c, cVar6 == '\0'" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) , (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')))) ))) )) ))) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) })) (labeled_statement "LAB_00016cbd:\n      puVar34 = auStack_28c;" statement_identifier : (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;)) (if_statement "if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }" { (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }" if (parenthesized_expression "((local_154.st_mode & 0xf000) != 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) != 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }" { (if_statement "if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" if (parenthesized_expression "(uVar9 == 0x4000)" ( (binary_expression "uVar9 == 0x4000" identifier == number_literal) )) (compound_statement "{\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" { (if_statement "if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0))" ( (binary_expression "((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)" (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar10 = *local_1f0, iVar10 == 0)" ( (comma_expression "iVar10 = *local_1f0, iVar10 == 0" (assignment_expression "iVar10 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" { (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) (if_statement "if ((byte)local_1fc != '\0') goto LAB_00016d0d;" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016d0d;" goto statement_identifier ;)) (goto_statement "goto LAB_00017827;" goto statement_identifier ;) })) (expression_statement "iVar10 = *local_1f0;" (assignment_expression "iVar10 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) ;) (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" identifier = identifier) ;) (if_statement "if ((byte)local_1fc == '\0') goto LAB_00016d69;" if (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016d69;" goto statement_identifier ;)) (labeled_statement "LAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" statement_identifier : (if_statement "if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" if (parenthesized_expression "(iVar10 != 3)" ( (binary_expression "iVar10 != 3" identifier != number_literal) )) (compound_statement "{\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" { (expression_statement "cVar6 = FUN_0001d250();" (assignment_expression "cVar6 = FUN_0001d250()" identifier = (call_expression "FUN_0001d250()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" { (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) (if_statement "if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;" if (parenthesized_expression "((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000))" ( (binary_expression "(uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "(uVar9 != 0x4000)" ( (binary_expression "uVar9 != 0x4000" identifier != number_literal) )) && (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_0001828c;" goto statement_identifier ;)) (goto_statement "goto LAB_00016d61;" goto statement_identifier ;) }))) (expression_statement "iVar10 = 3;" (assignment_expression "iVar10 = 3" identifier = number_literal) ;) (expression_statement "iVar8 = 3;" (assignment_expression "iVar8 = 3" identifier = number_literal) ;) (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00017827;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017827;" goto statement_identifier ;)) (labeled_statement "LAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();" statement_identifier : (expression_statement "pcVar20 = (char *)FUN_0001d030();" (assignment_expression "pcVar20 = (char *)FUN_0001d030()" identifier = (cast_expression "(char *)FUN_0001d030()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d030()" identifier (argument_list "()" ( ))))) ;)) (if_statement "if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }" if (parenthesized_expression "(*pcVar20 == '.')" ( (binary_expression "*pcVar20 == '.'" (pointer_expression "*pcVar20" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }" { (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (labeled_statement "LAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;" statement_identifier : (if_statement "if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;" if (parenthesized_expression "((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/'))" ( (binary_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')" (parenthesized_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '\0')" ( (binary_expression "pcVar20[(pcVar20[1] == '.') + 1] == '\0'" (subscript_expression "pcVar20[(pcVar20[1] == '.') + 1]" identifier [ (binary_expression "(pcVar20[1] == '.') + 1" (parenthesized_expression "(pcVar20[1] == '.')" ( (binary_expression "pcVar20[1] == '.'" (subscript_expression "pcVar20[1]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) + number_literal) ]) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '/')" ( (binary_expression "pcVar20[(pcVar20[1] == '.') + 1] == '/'" (subscript_expression "pcVar20[(pcVar20[1] == '.') + 1]" identifier [ (binary_expression "(pcVar20[1] == '.') + 1" (parenthesized_expression "(pcVar20[1] == '.')" ( (binary_expression "pcVar20[1] == '.'" (subscript_expression "pcVar20[1]" identifier [ number_literal ]) == (char_literal "'.'" ' character ')) )) + number_literal) ]) == (char_literal "'/'" ' character ')) ))) )) (goto_statement "goto LAB_00016d83;" goto statement_identifier ;))) (if_statement "if (bVar3) goto LAB_0001785b;" if (parenthesized_expression "(bVar3)" ( identifier )) (goto_statement "goto LAB_0001785b;" goto statement_identifier ;)) })) (if_statement "if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;" if (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00016da2;" goto statement_identifier ;)) (labeled_statement "LAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }" statement_identifier : (if_statement "if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }" if (parenthesized_expression "(iVar8 != 3)" ( (binary_expression "iVar8 != 3" identifier != number_literal) )) (compound_statement "{\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }" { (expression_statement "local_230 = (char *)strlen(pcVar20);" (assignment_expression "local_230 = (char *)strlen(pcVar20)" identifier = (cast_expression "(char *)strlen(pcVar20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "strlen(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier ))))) ;) (expression_statement "local_234 = (stat64 *)FUN_0001d030();" (assignment_expression "local_234 = (stat64 *)FUN_0001d030()" identifier = (cast_expression "(stat64 *)FUN_0001d030()" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d030()" identifier (argument_list "()" ( ))))) ;) (expression_statement "sVar16 = strlen((char *)local_234);" (assignment_expression "sVar16 = strlen((char *)local_234)" identifier = (call_expression "strlen((char *)local_234)" identifier (argument_list "((char *)local_234)" ( (cast_expression "(char *)local_234" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_238 = (stat64 *)&DAT_00039770;" (assignment_expression "local_238 = (stat64 *)&DAT_00039770" identifier = (cast_expression "(stat64 *)&DAT_00039770" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00039770" & identifier))) ;) (expression_statement "local_1f4 = DAT_00039770;" (assignment_expression "local_1f4 = DAT_00039770" identifier = identifier) ;) (expression_statement "local_23c = strlen(DAT_00039770);" (assignment_expression "local_23c = strlen(DAT_00039770)" identifier = (call_expression "strlen(DAT_00039770)" identifier (argument_list "(DAT_00039770)" ( identifier )))) ;) (if_statement "if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }" if (parenthesized_expression "(((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0))" ( (binary_expression "((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)" (parenthesized_expression "((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0))" ( (binary_expression "(local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)" (parenthesized_expression "(local_230 == (char *)(local_23c + sVar16))" ( (binary_expression "local_230 == (char *)(local_23c + sVar16)" identifier == (cast_expression "(char *)(local_23c + sVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_23c + sVar16)" ( (binary_expression "local_23c + sVar16" identifier + identifier) )))) )) && (parenthesized_expression "(iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)" ( (comma_expression "iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0" (assignment_expression "iVar10 = memcmp(pcVar20,local_234,sVar16)" identifier = (call_expression "memcmp(pcVar20,local_234,sVar16)" identifier (argument_list "(pcVar20,local_234,sVar16)" ( identifier , identifier , identifier )))) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)" ( (comma_expression "iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0" (assignment_expression "iVar10 = strcmp(pcVar20 + sVar16,local_1f4)" identifier = (call_expression "strcmp(pcVar20 + sVar16,local_1f4)" identifier (argument_list "(pcVar20 + sVar16,local_1f4)" ( (binary_expression "pcVar20 + sVar16" identifier + identifier) , identifier )))) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }" { (expression_statement "sVar16 = strlen(local_1f8);" (assignment_expression "sVar16 = strlen(local_1f8)" identifier = (call_expression "strlen(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier )))) ;) (expression_statement "pcVar20 = (char *)FUN_00022ed0();" (assignment_expression "pcVar20 = (char *)FUN_00022ed0()" identifier = (cast_expression "(char *)FUN_00022ed0()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_1f4 = *(char **)&local_238->st_dev;" (assignment_expression "local_1f4 = *(char **)&local_238->st_dev" identifier = (pointer_expression "*(char **)&local_238->st_dev" * (cast_expression "(char **)&local_238->st_dev" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier))))) ;) (expression_statement "pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);" (assignment_expression "pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16)" identifier = (cast_expression "(char *)mempcpy(pcVar20,local_1f8,sVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "mempcpy(pcVar20,local_1f8,sVar16)" identifier (argument_list "(pcVar20,local_1f8,sVar16)" ( identifier , identifier , identifier ))))) ;) (expression_statement "strcpy(pcVar18,local_1f4);" (call_expression "strcpy(pcVar18,local_1f4)" identifier (argument_list "(pcVar18,local_1f4)" ( identifier , identifier ))) ;) (expression_statement "iVar10 = __xstat64(3,pcVar20,&local_94);" (assignment_expression "iVar10 = __xstat64(3,pcVar20,&local_94)" identifier = (call_expression "__xstat64(3,pcVar20,&local_94)" identifier (argument_list "(3,pcVar20,&local_94)" ( number_literal , identifier , (pointer_expression "&local_94" & identifier) )))) ;) (expression_statement "free(pcVar20);" (call_expression "free(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier ))) ;) (if_statement "if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }" if (parenthesized_expression "(((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev))))" ( (binary_expression "((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))" (parenthesized_expression "((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino))" ( (binary_expression "(iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)" ( (binary_expression "local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino" (binary_expression "local_158 == local_94.st_ino._4_4_" identifier == (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier)) && (binary_expression "local_15c == (int)local_94.st_ino" identifier == (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)))) ))) )) && (parenthesized_expression "((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))" ( (parenthesized_expression "(local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev))" ( (binary_expression "local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)" (binary_expression "local_1b4._4_4_ == local_94.st_dev._4_4_" (field_expression "local_1b4._4_4_" identifier . field_identifier) == (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier)) && (parenthesized_expression "((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)" ( (binary_expression "(byte *)local_1b4._0_4_ == (byte *)local_94.st_dev" (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)) == (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }" { (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_000176c0:\n                    \n                error(0,0,uVar11);" statement_identifier : (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" identifier (argument_list "(0,0,uVar11)" ( number_literal , number_literal , identifier ))) ;)) })) })) }))) (expression_statement "pcVar20 = (char *)FUN_0001c300();" (assignment_expression "pcVar20 = (char *)FUN_0001c300()" identifier = (cast_expression "(char *)FUN_0001c300()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001c300()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_230 = pcVar20;" (assignment_expression "local_230 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" if (parenthesized_expression "(pcVar20 == (char *)0x0)" ( (binary_expression "pcVar20 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }" { (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (compound_statement "{\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*piVar14,uVar11);" (call_expression "error(0,*piVar14,uVar11)" identifier (argument_list "(0,*piVar14,uVar11)" ( number_literal , (pointer_expression "*piVar14" * identifier) , identifier ))) ;) })) }) (else_clause "else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" else (compound_statement "{\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" { (expression_statement "sVar16 = strlen(pcVar20);" (assignment_expression "sVar16 = strlen(pcVar20)" identifier = (call_expression "strlen(pcVar20)" identifier (argument_list "(pcVar20)" ( identifier )))) ;) (expression_statement "iVar8 = -(sVar16 + 0x1c & 0xfffffff0);" (assignment_expression "iVar8 = -(sVar16 + 0x1c & 0xfffffff0)" identifier = (unary_expression "-(sVar16 + 0x1c & 0xfffffff0)" - (parenthesized_expression "(sVar16 + 0x1c & 0xfffffff0)" ( (binary_expression "sVar16 + 0x1c & 0xfffffff0" (binary_expression "sVar16 + 0x1c" identifier + number_literal) & number_literal) )))) ;) (expression_statement "*(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;" (assignment_expression "*(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1" (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar8)" * (cast_expression "(size_t *)(&stack0xfffffd6c + iVar8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd6c + iVar8)" ( (binary_expression "&stack0xfffffd6c + iVar8" (pointer_expression "&stack0xfffffd6c" & identifier) + identifier) )))) = (binary_expression "sVar16 + 1" identifier + number_literal)) ;) (expression_statement "*(char **)(&stack0xfffffd68 + iVar8) = pcVar20;" (assignment_expression "*(char **)(&stack0xfffffd68 + iVar8) = pcVar20" (pointer_expression "*(char **)(&stack0xfffffd68 + iVar8)" * (cast_expression "(char **)(&stack0xfffffd68 + iVar8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd68 + iVar8)" ( (binary_expression "&stack0xfffffd68 + iVar8" (pointer_expression "&stack0xfffffd68" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;" (assignment_expression "*(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8" (pointer_expression "*(int *)(&stack0xfffffd64 + iVar8)" * (cast_expression "(int *)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) = (binary_expression "(int)&local_280 + iVar8" (cast_expression "(int)&local_280" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_280" & identifier)) + identifier)) ;) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8)" * (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd60 + iVar8)" ( (binary_expression "&stack0xfffffd60 + iVar8" (pointer_expression "&stack0xfffffd60" & identifier) + identifier) )))) = number_literal) ;) (expression_statement "pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));" (assignment_expression "pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" identifier = (cast_expression "(char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" identifier (argument_list "(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" ( (pointer_expression "*(void **)(&stack0xfffffd64 + iVar8)" * (cast_expression "(void **)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) , (pointer_expression "*(void **)(&stack0xfffffd68 + iVar8)" * (cast_expression "(void **)(&stack0xfffffd68 + iVar8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd68 + iVar8)" ( (binary_expression "&stack0xfffffd68 + iVar8" (pointer_expression "&stack0xfffffd68" & identifier) + identifier) )))) , (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar8)" * (cast_expression "(size_t *)(&stack0xfffffd6c + iVar8)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd6c + iVar8)" ( (binary_expression "&stack0xfffffd6c + iVar8" (pointer_expression "&stack0xfffffd6c" & identifier) + identifier) )))) ))))) ;) (expression_statement "*(char **)(&stack0xfffffd64 + iVar8) = pcVar20;" (assignment_expression "*(char **)(&stack0xfffffd64 + iVar8) = pcVar20" (pointer_expression "*(char **)(&stack0xfffffd64 + iVar8)" * (cast_expression "(char **)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) = identifier) ;) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8)" * (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xfffffd60 + iVar8)" ( (binary_expression "&stack0xfffffd60 + iVar8" (pointer_expression "&stack0xfffffd60" & identifier) + identifier) )))) = number_literal) ;) (expression_statement "free(*(void **)(&stack0xfffffd64 + iVar8));" (call_expression "free(*(void **)(&stack0xfffffd64 + iVar8))" identifier (argument_list "(*(void **)(&stack0xfffffd64 + iVar8))" ( (pointer_expression "*(void **)(&stack0xfffffd64 + iVar8)" * (cast_expression "(void **)(&stack0xfffffd64 + iVar8)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xfffffd64 + iVar8)" ( (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" & identifier) + identifier) )))) ))) ;) (expression_statement "local_230 = pcVar18;" (assignment_expression "local_230 = pcVar18" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "puVar34 = auStack_28c + iVar8;" (assignment_expression "puVar34 = auStack_28c + iVar8" identifier = (binary_expression "auStack_28c + iVar8" identifier + identifier)) ;) }))) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) (if_statement "if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" if (parenthesized_expression "(uVar9 != 0x4000)" ( (binary_expression "uVar9 != 0x4000" identifier != number_literal) )) (compound_statement "{\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" { (labeled_statement "LAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }" statement_identifier : (if_statement "if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }" if (parenthesized_expression "(((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0))" ( (binary_expression "((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)" (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar10 = *local_1f0, iVar10 == 0)" ( (comma_expression "iVar10 = *local_1f0, iVar10 == 0" (assignment_expression "iVar10 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }" { (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" identifier (argument_list "(0,0,uVar11)" ( number_literal , number_literal , identifier ))) ;) }))) (labeled_statement "LAB_00017827:\n          iVar8 = iVar10;" statement_identifier : (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" identifier = identifier) ;)) (if_statement "if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }" if (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }" { (labeled_statement "LAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" statement_identifier : (if_statement "if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" if (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00018756;" goto statement_identifier ;))) (if_statement "if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }" { (expression_statement "FUN_00020700();" (call_expression "FUN_00020700()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00020700();" (call_expression "FUN_00020700()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000176b3;" goto statement_identifier ;) })) })) (labeled_statement "LAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();" statement_identifier : (expression_statement "pcVar20 = (char *)FUN_0001d030();" (assignment_expression "pcVar20 = (char *)FUN_0001d030()" identifier = (cast_expression "(char *)FUN_0001d030()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d030()" identifier (argument_list "()" ( ))))) ;)) (if_statement "if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }" if (parenthesized_expression "(*pcVar20 == '.')" ( (binary_expression "*pcVar20 == '.'" (pointer_expression "*pcVar20" * identifier) == (char_literal "'.'" ' character ')) )) (compound_statement "{\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }" { (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (goto_statement "goto LAB_00018ca5;" goto statement_identifier ;) })) (goto_statement "goto LAB_0001785b;" goto statement_identifier ;) })) (labeled_statement "LAB_00016d61:\n        iVar8 = *local_1f0;" statement_identifier : (expression_statement "iVar8 = *local_1f0;" (assignment_expression "iVar8 = *local_1f0" identifier = (pointer_expression "*local_1f0" * identifier)) ;)) (labeled_statement "LAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" statement_identifier : (if_statement "if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" { (if_statement "if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;" if (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0001892a;" goto statement_identifier ;)) (labeled_statement "LAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;" statement_identifier : (if_statement "if (iVar8 != 0) goto LAB_0001783f;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001783f;" goto statement_identifier ;))) (labeled_statement "LAB_00016da2:\n          uVar38 = local_230._0_1_;" statement_identifier : (expression_statement "uVar38 = local_230._0_1_;" (assignment_expression "uVar38 = local_230._0_1_" identifier = (field_expression "local_230._0_1_" identifier . field_identifier)) ;)) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar38)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,uVar38)" identifier (argument_list "(local_1f4._1_3_,uVar38)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) }))) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (if_statement "if (iVar8 != 0) goto LAB_00018700;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00018700;" goto statement_identifier ;)) (labeled_statement "LAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;" statement_identifier : (if_statement "if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;" if (parenthesized_expression "(((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))))))" ( (binary_expression "((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))" (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000 || bVar3)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000 || bVar3" (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) || identifier) )) || (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))" ( (parenthesized_expression "((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2))))" ( (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))" (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" * (cast_expression "(char *)((int)local_1f0 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x15)" ( (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))" ( (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2))" ( (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)" (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" * (cast_expression "(char *)((int)local_1f0 + 0x22)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x22)" ( (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(local_154.st_nlink < 2)" ( (binary_expression "local_154.st_nlink < 2" (field_expression "local_154.st_nlink" identifier . field_identifier) < number_literal) ))) )) ))) )) && (parenthesized_expression "((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))" ( (parenthesized_expression "(local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))" ( (binary_expression "local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)" (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) || (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x8000)" ( (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x8000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" ( (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) ))) )) ))) )) (goto_statement "goto LAB_00016da2;" goto statement_identifier ;))) (expression_statement "iVar10 = unlink(local_1f8);" (assignment_expression "iVar10 = unlink(local_1f8)" identifier = (call_expression "unlink(local_1f8)" identifier (argument_list "(local_1f8)" ( identifier )))) ;) (if_statement "if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }" if (parenthesized_expression "((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2))" ( (binary_expression "(iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)" (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) && (parenthesized_expression "(piVar14 = __errno_location(), *piVar14 != 2)" ( (comma_expression "piVar14 = __errno_location(), *piVar14 != 2" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) , (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal)) ))) )) (compound_statement "{\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }" { (expression_statement "local_1f0 = piVar14;" (assignment_expression "local_1f0 = piVar14" identifier = identifier) ;) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*local_1f0,uVar11);" (call_expression "error(0,*local_1f0,uVar11)" identifier (argument_list "(0,*local_1f0,uVar11)" ( number_literal , (pointer_expression "*local_1f0" * identifier) , identifier ))) ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" { (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))) ;) (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016259;" goto statement_identifier ;) })) (if_statement "if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }" { (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_230 = (char *)local_1f0[0xf];" (assignment_expression "local_230 = (char *)local_1f0[0xf]" identifier = (cast_expression "(char *)local_1f0[0xf]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_1f0[0xf]" identifier [ number_literal ]))) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(byte)local_1fc)" identifier (argument_list "(local_1f4._1_3_,(byte)local_1fc)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) ;) (if_statement "if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;" if (parenthesized_expression "((char *)local_1f0[0xf] == (char *)0x0)" ( (binary_expression "(char *)local_1f0[0xf] == (char *)0x0" (cast_expression "(char *)local_1f0[0xf]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_1f0[0xf]" identifier [ number_literal ])) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00016356;" goto statement_identifier ;)) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (goto_statement "goto LAB_00016277;" goto statement_identifier ;) })) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) (goto_statement "goto LAB_00016356;" goto statement_identifier ;) })) (labeled_statement "LAB_00016570:\n      puVar29 = puVar34;" statement_identifier : (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" identifier = identifier) ;)) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) }))) (if_statement "if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" if (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" { (if_statement "if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016cbd;" goto statement_identifier ;)) (labeled_statement "LAB_00017420:\n      iVar10 = local_1f0[2];" statement_identifier : (expression_statement "iVar10 = local_1f0[2];" (assignment_expression "iVar10 = local_1f0[2]" identifier = (subscript_expression "local_1f0[2]" identifier [ number_literal ])) ;)) (if_statement "if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;" if (parenthesized_expression "((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))" ( (binary_expression "(iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')))" (parenthesized_expression "(iVar10 != 2)" ( (binary_expression "iVar10 != 2" identifier != number_literal) )) && (parenthesized_expression "(((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')))" ( (parenthesized_expression "((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))" ( (binary_expression "(iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')" (parenthesized_expression "(iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0'))))" ( (binary_expression "iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))" (binary_expression "iVar10 != 3" identifier != number_literal) && (parenthesized_expression "(((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))" ( (parenthesized_expression "((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0'))" ( (binary_expression "(iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')" (parenthesized_expression "(iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0'))" ( (binary_expression "iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')" (binary_expression "iVar10 != 4" identifier != number_literal) || (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2f) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2f) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2f)" * (cast_expression "(char *)((int)local_1f0 + 0x2f)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2f)" ( (binary_expression "(int)local_1f0 + 0x2f" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(cVar6 = FUN_00014980(), cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_00014980(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014980()" identifier = (call_expression "FUN_00014980()" identifier (argument_list "()" ( )))) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) ))) )) || (parenthesized_expression "(cVar6 = FUN_00014de0(), cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_00014de0(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014de0()" identifier = (call_expression "FUN_00014de0()" identifier (argument_list "()" ( )))) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) ))) )) (goto_statement "goto LAB_00016cbd;" goto statement_identifier ;)) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) })) (goto_statement "goto LAB_00016570;" goto statement_identifier ;) })) (expression_statement "iVar10 = FUN_00021ee0();" (assignment_expression "iVar10 = FUN_00021ee0()" identifier = (call_expression "FUN_00021ee0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" { (if_statement "if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016ca2;" goto statement_identifier ;)) (goto_statement "goto LAB_00017420;" goto statement_identifier ;) })) (if_statement "if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *local_208 = 1;\n    }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) })) (expression_statement "iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);" (assignment_expression "iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158)" identifier = (call_expression "FUN_0001a5c0(local_1f8,local_15c,local_158)" identifier (argument_list "(local_1f8,local_15c,local_158)" ( identifier , identifier , identifier )))) ;) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) ;) (if_statement "if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;" if (parenthesized_expression "((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))" ( (binary_expression "(iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0')" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) || (parenthesized_expression "(cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0')" ( (comma_expression "cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014f10()" identifier = (call_expression "FUN_00014f10()" identifier (argument_list "()" ( )))) , (comma_expression "puVar34 = auStack_28c, cVar6 != '\0'" (assignment_expression "puVar34 = auStack_28c" identifier = identifier) , (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')))) ))) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }" { (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" identifier = identifier) ;) })) (goto_statement "goto LAB_00016148;" goto statement_identifier ;) })) (expression_statement "local_214 = (byte **)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (byte **)((uint)local_214._1_3_ << 8)" identifier = (cast_expression "(byte **)((uint)local_214._1_3_ << 8)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((uint)local_214._1_3_ << 8)" ( (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_214._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00016259:\n  puVar32 = puVar34;" statement_identifier : (expression_statement "puVar32 = puVar34;" (assignment_expression "puVar32 = puVar34" identifier = identifier) ;)) (if_statement "if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" if (parenthesized_expression "(((byte)local_1fc == '\0') || (local_1f0[0xf] == 0))" ( (binary_expression "((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)" (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(local_1f0[0xf] == 0)" ( (binary_expression "local_1f0[0xf] == 0" (subscript_expression "local_1f0[0xf]" identifier [ number_literal ]) == number_literal) ))) )) (compound_statement "{\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }" { (labeled_statement "LAB_00016338:\n    puVar29 = puVar32;" statement_identifier : (expression_statement "puVar29 = puVar32;" (assignment_expression "puVar29 = puVar32" identifier = identifier) ;)) (if_statement "if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }" { (labeled_statement "LAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" statement_identifier : (if_statement "if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" if (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" ( (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x16b45;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x16b45" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) }))) })) (if_statement "if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }" { (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00016524;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016524;" goto statement_identifier ;)) (goto_statement "goto LAB_000165a0;" goto statement_identifier ;) })) (labeled_statement "LAB_00016356:\n    uVar9 = local_158;" statement_identifier : (expression_statement "uVar9 = local_158;" (assignment_expression "uVar9 = local_158" identifier = identifier) ;)) (expression_statement "iVar8 = local_15c;" (assignment_expression "iVar8 = local_15c" identifier = identifier) ;) (if_statement "if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2a) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2a) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2a)" * (cast_expression "(char *)((int)local_1f0 + 0x2a)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2a)" ( (binary_expression "(int)local_1f0 + 0x2a" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }" { (expression_statement "local_214 = (byte **)local_1b4._0_4_;" (assignment_expression "local_214 = (byte **)local_1b4._0_4_" identifier = (cast_expression "(byte **)local_1b4._0_4_" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_210 = local_1b4._4_4_;" (assignment_expression "local_210 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (if_statement "if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" if (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(byte ***)(puVar29 + -8) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -8) = local_214" (pointer_expression "*(byte ***)(puVar29 + -8)" * (cast_expression "(byte ***)(puVar29 + -8)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = iVar8;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar8" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x163c0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x163c0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a550();" (assignment_expression "local_214 = (byte **)FUN_0001a550()" identifier = (cast_expression "(byte **)FUN_0001a550()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a550()" identifier (argument_list "()" ( ))))) ;) }) (else_clause "else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" else (compound_statement "{\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" { (expression_statement "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(byte ***)(puVar29 + -0x14) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0x14) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0x14)" * (cast_expression "(byte ***)(puVar29 + -0x14)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x18) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar8;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar8" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x176f4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x176f4" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a5c0();" (assignment_expression "local_214 = (byte **)FUN_0001a5c0()" identifier = (cast_expression "(byte **)FUN_0001a5c0()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a5c0()" identifier (argument_list "()" ( ))))) ;) }))) (if_statement "if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }" if (parenthesized_expression "(local_214 != (byte **)0x0)" ( (binary_expression "local_214 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }" { (labeled_statement "LAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;" statement_identifier : (expression_statement "*(byte ***)(puVar29 + -0xc) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0xc) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0xc)" * (cast_expression "(byte ***)(puVar29 + -0xc)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x163e7;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x163e7" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039764;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039764" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b02;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b02" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b16;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b16" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot copy a directory, %s, into itself, %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b2b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b2b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018b39;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018b39" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018b39" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(byte ***)(puVar29 + -0xc) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0xc) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0xc)" * (cast_expression "(byte ***)(puVar29 + -0xc)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16406;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16406" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" identifier = (call_expression "FUN_00020ea0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -0xc) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18eee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18eee" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";" (assignment_expression "*(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""warning: source directory %s specified more than once"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018f0e" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018f0e" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }" if (parenthesized_expression "((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0'))))" ( (binary_expression "(local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))" (parenthesized_expression "(local_1f0[1] != 4)" ( (binary_expression "local_1f0[1] != 4" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) )) && (parenthesized_expression "((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))" ( (parenthesized_expression "(local_1f0[1] != 3 || ((byte)local_1fc == '\0'))" ( (binary_expression "local_1f0[1] != 3 || ((byte)local_1fc == '\0')" (binary_expression "local_1f0[1] != 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) != number_literal) || (parenthesized_expression "((byte)local_1fc == '\0')" ( (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }" { (expression_statement "*(byte ***)(puVar29 + -8) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -8) = local_214" (pointer_expression "*(byte ***)(puVar29 + -8)" * (cast_expression "(byte ***)(puVar29 + -8)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d3f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d3f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d53;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d53" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""will not create hard link %s to directory %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d68;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d68" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018d76;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018d76" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018d76" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (labeled_statement "LAB_00016438:\n      cVar6 = (char)local_1f0[6];" statement_identifier : (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;)) (labeled_statement "LAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" statement_identifier : (if_statement "if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }" { (labeled_statement "LAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" statement_identifier : (expression_statement "local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (assignment_expression "local_208 = (undefined1 *)((uint)local_1f4 & 0xff)" identifier = (cast_expression "(undefined1 *)((uint)local_1f4 & 0xff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xff)" ( (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) }) (else_clause "else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" else (compound_statement "{\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" { (labeled_statement "LAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" statement_identifier : (if_statement "if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" if (parenthesized_expression "(iVar10 == 0x11)" ( (binary_expression "iVar10 == 0x11" identifier == number_literal) )) (compound_statement "{\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x174bc;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x174bc" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier = (call_expression "rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x174cc;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x174cc" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar10 = *piVar14;" (assignment_expression "iVar10 = *piVar14" identifier = (pointer_expression "*piVar14" * identifier)) ;) (if_statement "if (iVar10 != 0) goto LAB_0001649e;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001649e;" goto statement_identifier ;)) })) (labeled_statement "LAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "renamed ";" (assignment_expression "*(char **)(puVar29 + -0xc) = "renamed "" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""renamed "" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18223;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18223" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1822d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1822d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18244;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18244" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18208;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18208" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00015960();" (call_expression "FUN_00015960()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }" if (parenthesized_expression "(local_208 != (undefined1 *)0x0)" ( (binary_expression "local_208 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            *local_208 = 1;\n          }" { (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" * identifier) = number_literal) ;) })) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" identifier = identifier) ;) (if_statement "if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }" if (parenthesized_expression "(((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0'))" ( (binary_expression "((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')" (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x31) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x31) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x31)" * (cast_expression "(char *)((int)local_1f0 + 0x31)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x31)" ( (binary_expression "(int)local_1f0 + 0x31" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }" { (expression_statement "*(undefined1 **)(puVar29 + -8) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar29 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (subscript_expression "piVar14[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17ab6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17ab6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar9 = local_1fc & 0xff;" (assignment_expression "uVar9 = local_1fc & 0xff" identifier = (binary_expression "local_1fc & 0xff" identifier & number_literal)) ;) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) })) (goto_statement "goto LAB_00016570;" goto statement_identifier ;) }))) (labeled_statement "LAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" statement_identifier : (if_statement "if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" if (parenthesized_expression "(iVar10 == 0x16)" ( (binary_expression "iVar10 == 0x16" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039764;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039764" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185ca;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185ca" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185de;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185de" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot move %s to a subdirectory of itself, %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185f3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185f3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018606;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018606" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018606" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) }))) (if_statement "if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }" if (parenthesized_expression "(iVar10 != 0x12)" ( (binary_expression "iVar10 != 0x12" identifier != number_literal) )) (compound_statement "{\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }" { (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180a2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180a2" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f0 = (int *)uVar11;" (assignment_expression "local_1f0 = (int *)uVar11" identifier = (cast_expression "(int *)uVar11" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180ba;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180ba" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot move %s to %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot move %s to %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot move %s to %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180cf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180cf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_00017594;" goto statement_identifier ;) })) (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" identifier = (binary_expression "local_204 & 0xf000" identifier & number_literal)) ;) (if_statement "if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" if (parenthesized_expression "(uVar9 == 0x4000)" ( (binary_expression "uVar9 == 0x4000" identifier == number_literal) )) (compound_statement "{\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }" { (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1825e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1825e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = rmdir(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = rmdir(*(char **)(puVar29 + -0x10))" identifier = (call_expression "rmdir(*(char **)(puVar29 + -0x10))" identifier (argument_list "(*(char **)(puVar29 + -0x10))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1826e;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1826e" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 != 2) goto LAB_00017548;" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (goto_statement "goto LAB_00017548;" goto statement_identifier ;)) })) }) (else_clause "else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" else (compound_statement "{\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" { (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x164d6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x164d6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = unlink(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = unlink(*(char **)(puVar29 + -0x10))" identifier = (call_expression "unlink(*(char **)(puVar29 + -0x10))" identifier (argument_list "(*(char **)(puVar29 + -0x10))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1753d;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1753d" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }" if (parenthesized_expression "(*piVar14 != 2)" ( (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" * identifier) != number_literal) )) (compound_statement "{\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }" { (labeled_statement "LAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;" statement_identifier : (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1755a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1755a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f0 = (int *)uVar11;" (assignment_expression "local_1f0 = (int *)uVar11" identifier = (cast_expression "(int *)uVar11" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17572;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17572" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";" (assignment_expression "*(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""inter-device move failed: %s to %s; unable to remove target"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17587;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17587" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (labeled_statement "LAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001759b;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001759b" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001759b" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (expression_statement "bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);" (assignment_expression "bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e)" identifier = (binary_expression "uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e)" (binary_expression "uVar9 != 0x4000" identifier != number_literal) & (pointer_expression "*(byte *)((int)local_1f0 + 0x2e)" * (cast_expression "(byte *)((int)local_1f0 + 0x2e)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,bVar25)" identifier (argument_list "(local_1f4._1_3_,bVar25)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }" if (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) )) (compound_statement "{\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "copied ";" (assignment_expression "*(char **)(puVar29 + -0xc) = "copied "" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""copied "" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a23;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a23" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a2d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a2d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a44;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a44" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_208 = (undefined1 *)0x1;" (assignment_expression "local_208 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000165b7;" goto statement_identifier ;) })) }))) (expression_statement "local_208 = (undefined1 *)0x1;" (assignment_expression "local_208 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) })))) (goto_statement "goto LAB_000165b7;" goto statement_identifier ;) })) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" identifier = (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ]))) ;) (if_statement "if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }" { (if_statement "if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" * (cast_expression "(char *)((int)local_1f0 + 0x22)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x22)" ( (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000165a0;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016ac0;" goto statement_identifier ;)) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (goto_statement "goto LAB_00016b03;" goto statement_identifier ;) })) (if_statement "if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }" if (parenthesized_expression "(local_1b4._20_4_ != 1)" ( (binary_expression "local_1b4._20_4_ != 1" (field_expression "local_1b4._20_4_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }" { (if_statement "if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x22) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" * (cast_expression "(char *)((int)local_1f0 + 0x22)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x22)" ( (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }" { (labeled_statement "LAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" statement_identifier : (if_statement "if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" if (parenthesized_expression "((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4))))" ( (binary_expression "(1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))" (parenthesized_expression "(1 < (uint)local_1b4._20_4_)" ( (binary_expression "1 < (uint)local_1b4._20_4_" number_literal < (cast_expression "(uint)local_1b4._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_1b4._20_4_" identifier . field_identifier))) )) || (parenthesized_expression "((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))" ( (parenthesized_expression "(((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4))" ( (binary_expression "((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)" (parenthesized_expression "((byte)local_1fc != '\0' && (local_1f0[1] == 3))" ( (binary_expression "(byte)local_1fc != '\0' && (local_1f0[1] == 3)" (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(local_1f0[1] == 3)" ( (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) ))) )) || (parenthesized_expression "(local_214 = (byte **)0x0, local_1f0[1] == 4)" ( (comma_expression "local_214 = (byte **)0x0, local_1f0[1] == 4" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) , (binary_expression "local_1f0[1] == 4" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal)) ))) )) ))) )) (compound_statement "{\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" { (expression_statement "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_158" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x1c) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1772e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1772e" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a5c0();" (assignment_expression "local_214 = (byte **)FUN_0001a5c0()" identifier = (cast_expression "(byte **)FUN_0001a5c0()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a5c0()" identifier (argument_list "()" ( ))))) ;) (goto_statement "goto LAB_00017737;" goto statement_identifier ;) }))) (goto_statement "goto LAB_00016afb;" goto statement_identifier ;) })) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (goto_statement "goto LAB_00016495;" goto statement_identifier ;) })) (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_158" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1834d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1834d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)FUN_0001a550();" (assignment_expression "local_214 = (byte **)FUN_0001a550()" identifier = (cast_expression "(byte **)FUN_0001a550()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001a550()" identifier (argument_list "()" ( ))))) ;) (labeled_statement "LAB_00017737:\n    piVar14 = local_1f0;" statement_identifier : (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;)) (if_statement "if (local_214 == (byte **)0x0) goto LAB_00016438;" if (parenthesized_expression "(local_214 == (byte **)0x0)" ( (binary_expression "local_214 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (goto_statement "goto LAB_00016438;" goto statement_identifier ;)) (if_statement "if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;" if (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" ( (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_000163d3;" goto statement_identifier ;)) (expression_statement "*(byte **)(puVar29 + -0xc) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0xc) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0xc)" * (cast_expression "(byte **)(puVar29 + -0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);" (assignment_expression "*(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e)" (pointer_expression "*(uint *)(puVar29 + -0x10)" * (cast_expression "(uint *)(puVar29 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "(uint)*(byte *)((int)piVar14 + 0x2e)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)((int)piVar14 + 0x2e)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x2e)" ( (binary_expression "(int)piVar14 + 0x2e" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17785;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17785" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00014f10();" (assignment_expression "cVar6 = FUN_00014f10()" identifier = (call_expression "FUN_00014f10()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" identifier = identifier) ;) (if_statement "if (cVar6 != '\0') goto LAB_00016570;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016570;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000177a0;" goto statement_identifier ;)) (labeled_statement "LAB_00016fcb:\n    pcVar20 = local_230;" statement_identifier : (expression_statement "pcVar20 = local_230;" (assignment_expression "pcVar20 = local_230" identifier = identifier) ;)) (if_statement "if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }" if (parenthesized_expression "(local_230 != (char *)0x0)" ( (binary_expression "local_230 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16fe8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16fe8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier = (call_expression "rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x182f0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x182f0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar31 = puVar29 + -8;" (assignment_expression "puVar31 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = ppuVar28 + -0x2be3;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2be3" identifier = (binary_expression "ppuVar28 + -0x2be3" identifier + number_literal)) ;) (goto_statement "goto LAB_00016222;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }" { (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17015;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17015" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_230;" (assignment_expression "*(char **)(puVar29 + -8) = local_230" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17029;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17029" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" * (cast_expression "(undefined ***)(puVar29 + -0xc)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "ppuVar28 + -0x2bde" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1703e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1703e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x17048;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x17048" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) })) })) }) (else_clause "else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" else (compound_statement "{\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" { (labeled_statement "LAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;" statement_identifier : (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00016338;" if (parenthesized_expression "((char)local_1f0[6] != '\0')" ( (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016338;" goto statement_identifier ;))) (if_statement "if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }" if (parenthesized_expression "(*local_1f0 == 0)" ( (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" * identifier) == number_literal) )) (compound_statement "{\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }" { (expression_statement "ppbVar17 = (byte **)&local_154;" (assignment_expression "ppbVar17 = (byte **)&local_154" identifier = (cast_expression "(byte **)&local_154" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_154" & identifier))) ;) (if_statement "if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }" if (parenthesized_expression "((char)local_214 == '\0')" ( (binary_expression "(char)local_214 == '\0'" (cast_expression "(char)local_214" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }" { (expression_statement "*(stat64 **)(puVar32 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar32 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar32 + -8)" * (cast_expression "(stat64 **)(puVar32 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar32 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_214 = (byte **)&local_94;" (assignment_expression "local_214 = (byte **)&local_94" identifier = (cast_expression "(byte **)&local_94" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_94" & identifier))) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x17a7d;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x17a7d" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));" (assignment_expression "iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" identifier (argument_list "(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" ( (pointer_expression "*(int *)(puVar32 + -0x10)" * (cast_expression "(int *)(puVar32 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar32 + -8)" * (cast_expression "(stat64 **)(puVar32 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "ppbVar17 = local_214;" (assignment_expression "ppbVar17 = local_214" identifier = identifier) ;) (if_statement "if (iVar8 != 0) goto LAB_00016338;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016338;" goto statement_identifier ;)) })) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }" if (parenthesized_expression "(((uint)ppbVar17[4] & 0xf000) == 0xa000)" ( (binary_expression "((uint)ppbVar17[4] & 0xf000) == 0xa000" (parenthesized_expression "((uint)ppbVar17[4] & 0xf000)" ( (binary_expression "(uint)ppbVar17[4] & 0xf000" (cast_expression "(uint)ppbVar17[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "ppbVar17[4]" identifier [ number_literal ])) & number_literal) )) == number_literal) )) (compound_statement "{\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }" { (expression_statement "*(byte ***)(puVar32 + -8) = ppbVar17;" (assignment_expression "*(byte ***)(puVar32 + -8) = ppbVar17" (pointer_expression "*(byte ***)(puVar32 + -8)" * (cast_expression "(byte ***)(puVar32 + -8)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar32 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar32 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar32 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar32 + -0x10)" * (cast_expression "(int *)(puVar32 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = (subscript_expression "piVar14[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x162d3;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x162d3" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_0001d250();" (assignment_expression "cVar6 = FUN_0001d250()" identifier = (call_expression "FUN_0001d250()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }" { (expression_statement "*(char **)(puVar32 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -8) = local_1f8" (pointer_expression "*(char **)(puVar32 + -8)" * (cast_expression "(char **)(puVar32 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar32 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar32 + -0xc)" * (cast_expression "(undefined4 *)(puVar32 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x162ec;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x162ec" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar32 + -8) = local_200;" (assignment_expression "*(char **)(puVar32 + -8) = local_200" (pointer_expression "*(char **)(puVar32 + -8)" * (cast_expression "(char **)(puVar32 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar32 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar32 + -0xc)" * (cast_expression "(undefined4 *)(puVar32 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x16300;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x16300" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f0 = (int *)FUN_000203c0();" (assignment_expression "local_1f0 = (int *)FUN_000203c0()" identifier = (cast_expression "(int *)FUN_000203c0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar32 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar32 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar32 + -8)" * (cast_expression "(undefined4 *)(puVar32 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -8)" ( (binary_expression "puVar32 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";" (assignment_expression "*(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s"" (pointer_expression "*(char **)(puVar32 + -0xc)" * (cast_expression "(char **)(puVar32 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0xc)" ( (binary_expression "puVar32 + -0xc" identifier + number_literal) )))) = (string_literal ""will not copy %s through just-created symlink %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x16319;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x16319" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" * (cast_expression "(undefined4 *)(puVar32 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" * (cast_expression "(undefined4 *)(puVar32 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x10)" ( (binary_expression "puVar32 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar32 + -0x14) = piVar14;" (assignment_expression "*(int **)(puVar32 + -0x14) = piVar14" (pointer_expression "*(int **)(puVar32 + -0x14)" * (cast_expression "(int **)(puVar32 + -0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0x14)" ( (binary_expression "puVar32 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar32 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar32 + -0x18)" * (cast_expression "(undefined4 *)(puVar32 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x18)" ( (binary_expression "puVar32 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x1c)" * (cast_expression "(undefined4 *)(puVar32 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x1c)" ( (binary_expression "puVar32 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar32 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x20)" * (cast_expression "(undefined4 *)(puVar32 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar32 + -0x20)" ( (binary_expression "puVar32 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar32 + -0x24) = &UNK_0001632d;" (assignment_expression "*(undefined **)(puVar32 + -0x24) = &UNK_0001632d" (pointer_expression "*(undefined **)(puVar32 + -0x24)" * (cast_expression "(undefined **)(puVar32 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar32 + -0x24)" ( (binary_expression "puVar32 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001632d" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (goto_statement "goto LAB_00016338;" goto statement_identifier ;) })) (expression_statement "puVar29 = puVar32;" (assignment_expression "puVar29 = puVar32" identifier = identifier) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016b18;" goto statement_identifier ;)) (if_statement "if (iVar10 != 0) goto LAB_00016356;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00016356;" goto statement_identifier ;)) (labeled_statement "LAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" statement_identifier : (expression_statement "local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (assignment_expression "local_208 = (undefined1 *)((uint)local_1f4 & 0xff)" identifier = (cast_expression "(undefined1 *)((uint)local_1f4 & 0xff)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xff)" ( (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;)) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (labeled_statement "LAB_000165b7:\n    uVar9 = local_204;" statement_identifier : (expression_statement "uVar9 = local_204;" (assignment_expression "uVar9 = local_204" identifier = identifier) ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2b) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" * (cast_expression "(char *)((int)local_1f0 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2b)" ( (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar9 = local_1f0[4];\n    }" { (expression_statement "uVar9 = local_1f0[4];" (assignment_expression "uVar9 = local_1f0[4]" identifier = (subscript_expression "local_1f0[4]" identifier [ number_literal ])) ;) })) (expression_statement "local_234 = (stat64 *)(uVar9 & 0xfff);" (assignment_expression "local_234 = (stat64 *)(uVar9 & 0xfff)" identifier = (cast_expression "(stat64 *)(uVar9 & 0xfff)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar9 & 0xfff)" ( (binary_expression "uVar9 & 0xfff" identifier & number_literal) )))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1d) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" * (cast_expression "(char *)((int)local_1f0 + 0x1d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }" { (expression_statement "local_238 = (stat64 *)(local_204 & 0xf000);" (assignment_expression "local_238 = (stat64 *)(local_204 & 0xf000)" identifier = (cast_expression "(stat64 *)(local_204 & 0xf000)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )))) ;) (if_statement "if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" if (parenthesized_expression "(local_238 == (stat64 *)0x4000)" ( (binary_expression "local_238 == (stat64 *)0x4000" identifier == (cast_expression "(stat64 *)0x4000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" * (cast_expression "(undefined1 **)(puVar29 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16dee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16dee" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }" { (expression_statement "local_23c = (uint)local_234 & 0x12;" (assignment_expression "local_23c = (uint)local_234 & 0x12" identifier = (binary_expression "(uint)local_234 & 0x12" (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (goto_statement "goto LAB_00016e08;" goto statement_identifier ;) })) }) (else_clause "else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" else (compound_statement "{\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" * (cast_expression "(undefined1 **)(puVar29 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16a82;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16a82" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_23c = 0;" (assignment_expression "local_23c = 0" identifier = number_literal) ;) (if_statement "if (cVar6 != '\0') goto LAB_0001664e;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001664e;" goto statement_identifier ;)) }))) }) (else_clause "else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" else (compound_statement "{\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" * (cast_expression "(undefined1 **)(puVar29 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16618;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16618" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }" { (expression_statement "local_23c = (uint)local_234 & 0x3f;" (assignment_expression "local_23c = (uint)local_234 & 0x3f" identifier = (binary_expression "(uint)local_234 & 0x3f" (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "local_238 = (stat64 *)(local_204 & 0xf000);" (assignment_expression "local_238 = (stat64 *)(local_204 & 0xf000)" identifier = (cast_expression "(stat64 *)(local_204 & 0xf000)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) )))) ;) (if_statement "if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" if (parenthesized_expression "((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000)" ( (binary_expression "(stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000" (cast_expression "(stat64 *)(local_204 & 0xf000)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_204 & 0xf000)" ( (binary_expression "local_204 & 0xf000" identifier & number_literal) ))) == (cast_expression "(stat64 *)0x4000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }" { (labeled_statement "LAB_00016e08:\n          piVar14 = local_1f0;" statement_identifier : (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;)) (if_statement "if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" if (parenthesized_expression "(local_228 == (int *)0x0)" ( (binary_expression "local_228 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }" { (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" identifier = (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) }) (else_clause "else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" else (compound_statement "{\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" { (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" identifier = (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "piVar23 = local_228;" (assignment_expression "piVar23 = local_228" identifier = identifier) ;) (do_statement "do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);" do (compound_statement "{\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            }" { (if_statement "if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }" if (parenthesized_expression "((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3]))" ( (binary_expression "(piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])" (parenthesized_expression "(piVar23[2] == local_158 && piVar23[1] == local_15c)" ( (binary_expression "piVar23[2] == local_158 && piVar23[1] == local_15c" (binary_expression "piVar23[2] == local_158" (subscript_expression "piVar23[2]" identifier [ number_literal ]) == identifier) && (binary_expression "piVar23[1] == local_15c" (subscript_expression "piVar23[1]" identifier [ number_literal ]) == identifier)) )) && (parenthesized_expression "(local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])" ( (binary_expression "local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3]" (binary_expression "local_1b4._4_4_ == piVar23[4]" (field_expression "local_1b4._4_4_" identifier . field_identifier) == (subscript_expression "piVar23[4]" identifier [ number_literal ])) && (binary_expression "(byte *)local_1b4._0_4_ == (byte *)piVar23[3]" (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)) == (cast_expression "(byte *)piVar23[3]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar23[3]" identifier [ number_literal ])))) ))) )) (compound_statement "{\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16e7e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16e7e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot copy cyclic symbolic link %s";" (assignment_expression "pcVar20 = "cannot copy cyclic symbolic link %s"" identifier = (string_literal ""cannot copy cyclic symbolic link %s"" " string_content ")) ;) (goto_statement "goto LAB_00016e8b;" goto statement_identifier ;) })) (expression_statement "piVar23 = (int *)*piVar23;" (assignment_expression "piVar23 = (int *)*piVar23" identifier = (cast_expression "(int *)*piVar23" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) }) while (parenthesized_expression "(piVar23 != (int *)0x0)" ( (binary_expression "piVar23 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) }))) (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" identifier = (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier))) ;) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" identifier = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);" (assignment_expression "local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0)" identifier = (cast_expression "(stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar29 + -0x11) & 0xfffffff0)" ( (binary_expression "(uint)(puVar29 + -0x11) & 0xfffffff0" (call_expression "(uint)(puVar29 + -0x11)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar29 + -0x11)" ( (binary_expression "puVar29 + -0x11" identifier + number_literal) ))) & number_literal) )))) ;) (expression_statement "local_238->__pad1 = local_158;" (assignment_expression "local_238->__pad1 = local_158" (field_expression "local_238->__pad1" identifier -> field_identifier) = identifier) ;) (expression_statement "local_238->__st_ino = local_1b4._0_4_;" (assignment_expression "local_238->__st_ino = local_1b4._0_4_" (field_expression "local_238->__st_ino" identifier -> field_identifier) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(int **)&local_238->st_dev = local_228;" (assignment_expression "*(int **)&local_238->st_dev = local_228" (pointer_expression "*(int **)&local_238->st_dev" * (cast_expression "(int **)&local_238->st_dev" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier)))) = identifier) ;) (expression_statement "*(int *)((int)&local_238->st_dev + 4) = local_15c;" (assignment_expression "*(int *)((int)&local_238->st_dev + 4) = local_15c" (pointer_expression "*(int *)((int)&local_238->st_dev + 4)" * (cast_expression "(int *)((int)&local_238->st_dev + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_238->st_dev + 4)" ( (binary_expression "(int)&local_238->st_dev + 4" (cast_expression "(int)&local_238->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_238->st_dev" & (field_expression "local_238->st_dev" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "local_238->st_mode = local_1b4._4_4_;" (assignment_expression "local_238->st_mode = local_1b4._4_4_" (field_expression "local_238->st_mode" identifier -> field_identifier) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (if_statement "if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" if (parenthesized_expression "(((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000))" ( (binary_expression "((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" ( (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }" { (if_statement "if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }" { (expression_statement "bVar25 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar25 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (bVar25 != 0) goto LAB_0001889e;" if (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0001889e;" goto statement_identifier ;)) }) (else_clause "else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" else (compound_statement "{\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" { (expression_statement "bVar25 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar25 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (labeled_statement "LAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;" statement_identifier : (expression_statement "*(int **)(puVar29 + -0x24) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x24) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x24)" * (cast_expression "(int **)(puVar29 + -0x24)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0x2c) = (uint)bVar25;" (assignment_expression "*(uint *)(puVar29 + -0x2c) = (uint)bVar25" (pointer_expression "*(uint *)(puVar29 + -0x2c)" * (cast_expression "(uint *)(puVar29 + -0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x188b3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x188b3" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00015960();" (assignment_expression "cVar6 = FUN_00015960()" identifier = (call_expression "FUN_00015960()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;" if (parenthesized_expression "((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))" ( (binary_expression "(cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0')" (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0')" ( (comma_expression "puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'" (assignment_expression "puVar34 = puVar29 + -0x20" identifier = (binary_expression "puVar29 + -0x20" identifier + number_literal)) , (binary_expression "*(char *)((int)piVar14 + 0x26) != '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x26)" * (cast_expression "(char *)((int)piVar14 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x26)" ( (binary_expression "(int)piVar14 + 0x26" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence '))) ))) )) (goto_statement "goto LAB_00016fad;" goto statement_identifier ;)) }))) (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" identifier = (binary_expression "local_24c & 0xffffff00" identifier & number_literal)) ;) (expression_statement "local_23c = 0;" (assignment_expression "local_23c = 0" identifier = number_literal) ;) }) (else_clause "else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" else (compound_statement "{\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" { (expression_statement "*(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;" (assignment_expression "*(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234" (pointer_expression "*(uint *)(puVar29 + -0x2c)" * (cast_expression "(uint *)(puVar29 + -0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (binary_expression "~local_23c & (uint)local_234" (unary_expression "~local_23c" ~ identifier) & (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17154;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17154" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));" (assignment_expression "iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier = (call_expression "mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier (argument_list "(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" ( (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" * (cast_expression "(__mode_t *)(puVar29 + -0x2c)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 100000;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 100000" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" identifier = (binary_expression "puVar29 + -0x28" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot create directory %s";" (assignment_expression "pcVar20 = "cannot create directory %s"" identifier = (string_literal ""cannot create directory %s"" " string_content ")) ;) (labeled_statement "LAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar33 + -4) = pcVar20;" (assignment_expression "*(char **)(puVar33 + -4) = pcVar20" (pointer_expression "*(char **)(puVar33 + -4)" * (cast_expression "(char **)(puVar33 + -4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar33 + -4)" ( (binary_expression "puVar33 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar33 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar33 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar33 + -8)" * (cast_expression "(undefined4 *)(puVar33 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -8)" ( (binary_expression "puVar33 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = 0x16f98;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = 0x16f98" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" * (cast_expression "(undefined4 *)(puVar33 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0xc)" ( (binary_expression "puVar33 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = 0x16f9f;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = 0x16f9f" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" * (cast_expression "(undefined4 *)(puVar33 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0xc)" ( (binary_expression "puVar33 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" * (cast_expression "(undefined4 *)(puVar33 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0xc)" ( (binary_expression "puVar33 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar33 + -0x10) = uVar12;" (assignment_expression "*(undefined4 *)(puVar33 + -0x10) = uVar12" (pointer_expression "*(undefined4 *)(puVar33 + -0x10)" * (cast_expression "(undefined4 *)(puVar33 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0x10)" ( (binary_expression "puVar33 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar33 + -0x14) = *piVar14;" (assignment_expression "*(int *)(puVar33 + -0x14) = *piVar14" (pointer_expression "*(int *)(puVar33 + -0x14)" * (cast_expression "(int *)(puVar33 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0x14)" ( (binary_expression "puVar33 + -0x14" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar33 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar33 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar33 + -0x18)" * (cast_expression "(undefined4 *)(puVar33 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar33 + -0x18)" ( (binary_expression "puVar33 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;" (assignment_expression "*(undefined **)(puVar33 + -0x1c) = &UNK_00016faa" (pointer_expression "*(undefined **)(puVar33 + -0x1c)" * (cast_expression "(undefined **)(puVar33 + -0x1c)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar33 + -0x1c)" ( (binary_expression "puVar33 + -0x1c" identifier + number_literal) )))) = (pointer_expression "&UNK_00016faa" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(stat64 **)(puVar29 + -0x28) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -0x28) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -0x28)" * (cast_expression "(stat64 **)(puVar29 + -0x28)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = (pointer_expression "&local_154" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17176;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17176" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" identifier = (call_expression "__lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" identifier (argument_list "(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" ( (pointer_expression "*(int *)(puVar29 + -0x30)" * (cast_expression "(int *)(puVar29 + -0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -0x28)" * (cast_expression "(stat64 **)(puVar29 + -0x28)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) )))) ;) (expression_statement "_Var5 = local_154.st_mode;" (assignment_expression "_Var5 = local_154.st_mode" identifier = (field_expression "local_154.st_mode" identifier . field_identifier)) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x18ce1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x18ce1" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" identifier = (binary_expression "puVar29 + -0x28" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot stat %s";" (assignment_expression "pcVar20 = "cannot stat %s"" identifier = (string_literal ""cannot stat %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" identifier = (binary_expression "local_24c & 0xffffff00" identifier & number_literal)) ;) (if_statement "if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }" if (parenthesized_expression "((local_154.st_mode & 0x1c0) != 0x1c0)" ( (binary_expression "(local_154.st_mode & 0x1c0) != 0x1c0" (parenthesized_expression "(local_154.st_mode & 0x1c0)" ( (binary_expression "local_154.st_mode & 0x1c0" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }" { (expression_statement "*(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;" (assignment_expression "*(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0" (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" * (cast_expression "(__mode_t *)(puVar29 + -0x2c)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (binary_expression "local_154.st_mode | 0x1c0" (field_expression "local_154.st_mode" identifier . field_identifier) | number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x171b2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x171b2" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));" (assignment_expression "iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier = (call_expression "chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" identifier (argument_list "(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" ( (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" * (cast_expression "(__mode_t *)(puVar29 + -0x2c)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) )))) ;) (expression_statement "local_270 = _Var5;" (assignment_expression "local_270 = _Var5" identifier = identifier) ;) (expression_statement "local_24c = CONCAT31(local_24c._1_3_,1);" (assignment_expression "local_24c = CONCAT31(local_24c._1_3_,1)" identifier = (call_expression "CONCAT31(local_24c._1_3_,1)" identifier (argument_list "(local_24c._1_3_,1)" ( (field_expression "local_24c._1_3_" identifier . field_identifier) , number_literal )))) ;) (if_statement "if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19082;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19082" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" identifier = (binary_expression "puVar29 + -0x28" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "setting permissions for %s";" (assignment_expression "pcVar20 = "setting permissions for %s"" identifier = (string_literal ""setting permissions for %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) })) (if_statement "if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }" if (parenthesized_expression "(*local_21c == (code)0x0)" ( (binary_expression "*local_21c == (code)0x0" (pointer_expression "*local_21c" * identifier) == (cast_expression "(code)0x0" ( (type_descriptor "code" type_identifier) ) number_literal)) )) (compound_statement "{\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }" { (expression_statement "*(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;" (assignment_expression "*(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_" (pointer_expression "*(__ino_t *)(puVar29 + -0x30)" * (cast_expression "(__ino_t *)(puVar29 + -0x30)" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = (field_expression "local_154.st_dev._4_4_" (field_expression "local_154.st_dev" identifier . field_identifier) . field_identifier)) ;) (expression_statement "*(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;" (assignment_expression "*(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev" (pointer_expression "*(byte **)(puVar29 + -0x34)" * (cast_expression "(byte **)(puVar29 + -0x34)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = (cast_expression "(byte *)local_154.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_154.st_dev" identifier . field_identifier))) ;) (expression_statement "*(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;" (assignment_expression "*(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_" (pointer_expression "*(uint *)(puVar29 + -0x38)" * (cast_expression "(uint *)(puVar29 + -0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x38)" ( (binary_expression "puVar29 + -0x38" identifier + number_literal) )))) = (field_expression "local_154.st_ino._4_4_" (field_expression "local_154.st_ino" identifier . field_identifier) . field_identifier)) ;) (expression_statement "*(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;" (assignment_expression "*(int *)(puVar29 + -0x3c) = (int)local_154.st_ino" (pointer_expression "*(int *)(puVar29 + -0x3c)" * (cast_expression "(int *)(puVar29 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x3c)" ( (binary_expression "puVar29 + -0x3c" identifier + number_literal) )))) = (cast_expression "(int)local_154.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_ino" identifier . field_identifier))) ;) (expression_statement "*(char **)(puVar29 + -0x40) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x40) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x40)" * (cast_expression "(char **)(puVar29 + -0x40)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x40)" ( (binary_expression "puVar29 + -0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x44) = 0x18c19;" (assignment_expression "*(undefined4 *)(puVar29 + -0x44) = 0x18c19" (pointer_expression "*(undefined4 *)(puVar29 + -0x44)" * (cast_expression "(undefined4 *)(puVar29 + -0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x44)" ( (binary_expression "puVar29 + -0x44" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001a5c0();" (call_expression "FUN_0001a5c0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*local_21c = (code)0x1;" (assignment_expression "*local_21c = (code)0x1" (pointer_expression "*local_21c" * identifier) = (cast_expression "(code)0x1" ( (type_descriptor "code" type_identifier) ) number_literal)) ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }" { (if_statement "if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }" { (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x18d28;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x18d28" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" else (compound_statement "{\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x171ff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x171ff" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = "created directory %s\n";" (assignment_expression "*(char **)(puVar29 + -0x2c) = "created directory %s\n"" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (string_literal ""created directory %s\n"" " string_content escape_sequence ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17214;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17214" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x2c) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x2c) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x2c)" * (cast_expression "(undefined4 *)(puVar29 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17220;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17220" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) }))) })) }))) (expression_statement "puVar34 = puVar29 + -0x20;" (assignment_expression "puVar34 = puVar29 + -0x20" identifier = (binary_expression "puVar29 + -0x20" identifier + number_literal)) ;) (expression_statement "bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);" (assignment_expression "bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7)" identifier = (binary_expression "local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7)" (binary_expression "local_22c != (__ino_t *)0x0" identifier != (cast_expression "(__ino_t *)0x0" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) & (pointer_expression "*(byte *)(local_1f0 + 7)" * (cast_expression "(byte *)(local_1f0 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 7)" ( (binary_expression "local_1f0 + 7" identifier + number_literal) )))))) ;) (expression_statement "uVar9 = (uint)bVar25;" (assignment_expression "uVar9 = (uint)bVar25" identifier = (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }" if (parenthesized_expression "((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_))" ( (binary_expression "(bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)" (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) || (parenthesized_expression "(local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)" ( (binary_expression "local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_" (binary_expression "local_22c[1] == local_1b4._4_4_" (subscript_expression "local_22c[1]" identifier [ number_literal ]) == (field_expression "local_1b4._4_4_" identifier . field_identifier)) && (binary_expression "(byte *)*local_22c == (byte *)local_1b4._0_4_" (cast_expression "(byte *)*local_22c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_22c" * identifier)) == (cast_expression "(byte *)local_1b4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._0_4_" identifier . field_identifier)))) ))) )) (compound_statement "{\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }" { (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" identifier = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "psVar26 = local_240;" (assignment_expression "psVar26 = local_240" identifier = identifier) ;) (for_statement "for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }" for ( (assignment_expression "iVar10 = 0x11" identifier = number_literal) ; (binary_expression "iVar10 != 0" identifier != number_literal) ; (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ) (compound_statement "{\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }" { (expression_statement "*(int *)&psVar26->st_dev = *piVar14;" (assignment_expression "*(int *)&psVar26->st_dev = *piVar14" (pointer_expression "*(int *)&psVar26->st_dev" * (cast_expression "(int *)&psVar26->st_dev" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar26->st_dev" & (field_expression "psVar26->st_dev" identifier -> field_identifier)))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "piVar14 = piVar14 + (uint)bVar40 * -2 + 1;" (assignment_expression "piVar14 = piVar14 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "piVar14 + (uint)bVar40 * -2 + 1" (binary_expression "piVar14 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" identifier = (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" ( (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) })) (expression_statement "*(undefined4 *)(puVar29 + -0x2c) = 2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x2c) = 2" (pointer_expression "*(undefined4 *)(puVar29 + -0x2c)" * (cast_expression "(undefined4 *)(puVar29 + -0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_200" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1726d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1726d" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = (char *)FUN_000212f0();" (assignment_expression "pcVar20 = (char *)FUN_000212f0()" identifier = (cast_expression "(char *)FUN_000212f0()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000212f0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_230 = pcVar20;" (assignment_expression "local_230 = pcVar20" identifier = identifier) ;) (if_statement "if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }" if (parenthesized_expression "(pcVar20 == (char *)0x0)" ( (binary_expression "pcVar20 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -0x2c) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_200" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19153;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19153" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = "cannot access %s";" (assignment_expression "*(char **)(puVar29 + -0x2c) = "cannot access %s"" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = (string_literal ""cannot access %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19168;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19168" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1916f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1916f" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x38) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x38) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x38)" * (cast_expression "(undefined4 *)(puVar29 + -0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x38)" ( (binary_expression "puVar29 + -0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x3c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x3c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x3c)" * (cast_expression "(int *)(puVar29 + -0x3c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x3c)" ( (binary_expression "puVar29 + -0x3c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x40) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x40) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x40)" * (cast_expression "(undefined4 *)(puVar29 + -0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x40)" ( (binary_expression "puVar29 + -0x40" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x44) = &UNK_0001917c;" (assignment_expression "*(undefined **)(puVar29 + -0x44) = &UNK_0001917c" (pointer_expression "*(undefined **)(puVar29 + -0x44)" * (cast_expression "(undefined **)(puVar29 + -0x44)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x44)" ( (binary_expression "puVar29 + -0x44" identifier + number_literal) )))) = (pointer_expression "&UNK_0001917c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }" if (parenthesized_expression "(local_1f0[1] == 3)" ( (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n              local_94.st_dev._4_4_ = 2;\n            }" { (expression_statement "local_94.st_dev._4_4_ = 2;" (assignment_expression "local_94.st_dev._4_4_ = 2" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = number_literal) ;) })) (if_statement "if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" if (parenthesized_expression "(*pcVar20 == '\0')" ( (binary_expression "*pcVar20 == '\0'" (pointer_expression "*pcVar20" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }" { (expression_statement "local_228 = (int *)((uint)local_228._1_3_ << 8);" (assignment_expression "local_228 = (int *)((uint)local_228._1_3_ << 8)" identifier = (cast_expression "(int *)((uint)local_228._1_3_ << 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_228._1_3_ << 8)" ( (binary_expression "(uint)local_228._1_3_ << 8" (cast_expression "(uint)local_228._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_228._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" identifier = number_literal) ;) }) (else_clause "else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" else (compound_statement "{\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" { (expression_statement "local_20c = local_1b4;" (assignment_expression "local_20c = local_1b4" identifier = identifier) ;) (expression_statement "local_228 = (int *)((uint)local_228._1_3_ << 8);" (assignment_expression "local_228 = (int *)((uint)local_228._1_3_ << 8)" identifier = (cast_expression "(int *)((uint)local_228._1_3_ << 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_228._1_3_ << 8)" ( (binary_expression "(uint)local_228._1_3_ << 8" (cast_expression "(uint)local_228._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_228._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_234 = (stat64 *)local_f4;" (assignment_expression "local_234 = (stat64 *)local_f4" identifier = (cast_expression "(stat64 *)local_f4" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,1);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,1)" identifier = (call_expression "CONCAT31(local_224._1_3_,1)" identifier (argument_list "(local_224._1_3_,1)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , number_literal )))) ;) (do_statement "do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');" do (compound_statement "{\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              }" { (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x2c) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_200" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1731f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1731f" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppbVar17 = (byte **)FUN_0001d480();" (assignment_expression "ppbVar17 = (byte **)FUN_0001d480()" identifier = (cast_expression "(byte **)FUN_0001d480()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0001d480()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x2c) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x2c) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x2c)" * (cast_expression "(char **)(puVar29 + -0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_214 = ppbVar17;" (assignment_expression "local_214 = ppbVar17" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17336;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17336" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_0001d480();" (assignment_expression "uVar11 = FUN_0001d480()" identifier = (call_expression "FUN_0001d480()" identifier (argument_list "()" ( )))) ;) (expression_statement "cVar1 = *local_21c;" (assignment_expression "cVar1 = *local_21c" identifier = (pointer_expression "*local_21c" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(__ino_t **)(puVar29 + -0x2c) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x2c) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x2c)" * (cast_expression "(__ino_t **)(puVar29 + -0x2c)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(stat64 **)(puVar29 + -0x30) = local_234;" (assignment_expression "*(stat64 **)(puVar29 + -0x30) = local_234" (pointer_expression "*(stat64 **)(puVar29 + -0x30)" * (cast_expression "(stat64 **)(puVar29 + -0x30)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(stat64 **)(puVar29 + -0x38) = local_240;" (assignment_expression "*(stat64 **)(puVar29 + -0x38) = local_240" (pointer_expression "*(stat64 **)(puVar29 + -0x38)" * (cast_expression "(stat64 **)(puVar29 + -0x38)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x38)" ( (binary_expression "puVar29 + -0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(stat64 **)(puVar29 + -0x3c) = local_238;" (assignment_expression "*(stat64 **)(puVar29 + -0x3c) = local_238" (pointer_expression "*(stat64 **)(puVar29 + -0x3c)" * (cast_expression "(stat64 **)(puVar29 + -0x3c)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x3c)" ( (binary_expression "puVar29 + -0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(byte **)(puVar29 + -0x40) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0x40) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0x40)" * (cast_expression "(byte **)(puVar29 + -0x40)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x40)" ( (binary_expression "puVar29 + -0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_f4[0] = (byte)cVar1;" (assignment_expression "local_f4[0] = (byte)cVar1" (subscript_expression "local_f4[0]" identifier [ number_literal ]) = (cast_expression "(byte)cVar1" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x44) = 0x1737f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x44) = 0x1737f" (pointer_expression "*(undefined4 *)(puVar29 + -0x44)" * (cast_expression "(undefined4 *)(puVar29 + -0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x44)" ( (binary_expression "puVar29 + -0x44" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar40 = FUN_00015de0();" (assignment_expression "bVar40 = FUN_00015de0()" identifier = (call_expression "FUN_00015de0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40)" identifier = (call_expression "CONCAT31(local_224._1_3_,(byte)local_224 & bVar40)" identifier (argument_list "(local_224._1_3_,(byte)local_224 & bVar40)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (binary_expression "(byte)local_224 & bVar40" (cast_expression "(byte)local_224" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (expression_statement "*local_220 = (code)((byte)*local_220 | (byte)local_1d4);" (assignment_expression "*local_220 = (code)((byte)*local_220 | (byte)local_1d4)" (pointer_expression "*local_220" * identifier) = (call_expression "(code)((byte)*local_220 | (byte)local_1d4)" (parenthesized_expression "(code)" ( identifier )) (argument_list "((byte)*local_220 | (byte)local_1d4)" ( (binary_expression "(byte)*local_220 | (byte)local_1d4" (binary_expression "(byte)*local_220" (parenthesized_expression "(byte)" ( identifier )) * identifier) | (cast_expression "(byte)local_1d4" ( (type_descriptor "byte" type_identifier) ) identifier)) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" * (cast_expression "(undefined4 *)(puVar29 + -0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1739d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1739d" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" identifier (argument_list "(*(void **)(puVar29 + -0x30))" ( (pointer_expression "*(void **)(puVar29 + -0x30)" * (cast_expression "(void **)(puVar29 + -0x30)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "*(byte ***)(puVar29 + -0x30) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0x30) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0x30)" * (cast_expression "(byte ***)(puVar29 + -0x30)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x173a9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x173a9" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" identifier (argument_list "(*(void **)(puVar29 + -0x30))" ( (pointer_expression "*(void **)(puVar29 + -0x30)" * (cast_expression "(void **)(puVar29 + -0x30)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) ))) ;) (if_statement "if ((byte)local_1d4 != '\0') break;" if (parenthesized_expression "((byte)local_1d4 != '\0')" ( (binary_expression "(byte)local_1d4 != '\0'" (cast_expression "(byte)local_1d4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);" (assignment_expression "local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" identifier = (cast_expression "(int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" identifier (argument_list "(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" ( (field_expression "local_228._1_3_" identifier . field_identifier) , (binary_expression "(byte)local_228._0_1_ | local_f4[0]" (cast_expression "(byte)local_228._0_1_" ( (type_descriptor "byte" type_identifier) ) (field_expression "local_228._0_1_" identifier . field_identifier)) | (subscript_expression "local_f4[0]" identifier [ number_literal ])) ))))) ;) (expression_statement "*(char **)(puVar29 + -0x30) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x30) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x172fe;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x172fe" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "sVar16 = strlen(*(char **)(puVar29 + -0x30));" (assignment_expression "sVar16 = strlen(*(char **)(puVar29 + -0x30))" identifier = (call_expression "strlen(*(char **)(puVar29 + -0x30))" identifier (argument_list "(*(char **)(puVar29 + -0x30))" ( (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) )))) ;) (expression_statement "pcVar20 = pcVar20 + sVar16 + 1;" (assignment_expression "pcVar20 = pcVar20 + sVar16 + 1" identifier = (binary_expression "pcVar20 + sVar16 + 1" (binary_expression "pcVar20 + sVar16" identifier + identifier) + number_literal)) ;) }) while (parenthesized_expression "(*pcVar20 != '\0')" ( (binary_expression "*pcVar20 != '\0'" (pointer_expression "*pcVar20" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "uVar9 = local_224 & 0xff;" (assignment_expression "uVar9 = local_224 & 0xff" identifier = (binary_expression "local_224 & 0xff" identifier & number_literal)) ;) }))) (expression_statement "*(char **)(puVar29 + -0x30) = local_230;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_230" (pointer_expression "*(char **)(puVar29 + -0x30)" * (cast_expression "(char **)(puVar29 + -0x30)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x173ce;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x173ce" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" identifier (argument_list "(*(void **)(puVar29 + -0x30))" ( (pointer_expression "*(void **)(puVar29 + -0x30)" * (cast_expression "(void **)(puVar29 + -0x30)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) ))) ;) (expression_statement "*local_21c = local_228._0_1_;" (assignment_expression "*local_21c = local_228._0_1_" (pointer_expression "*local_21c" * identifier) = (field_expression "local_228._0_1_" identifier . field_identifier)) ;) })) (if_statement "if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8)" identifier = (cast_expression "(undefined1 *)((uint)local_208._1_3_ << 8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208._1_3_ << 8)" ( (binary_expression "(uint)local_208._1_3_ << 8" (cast_expression "(uint)local_208._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_208._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "bVar40 = 0;" (assignment_expression "bVar40 = 0" identifier = number_literal) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(char)uVar9);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(char)uVar9)" identifier = (call_expression "CONCAT31(local_224._1_3_,(char)uVar9)" identifier (argument_list "(local_224._1_3_,(char)uVar9)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(char)uVar9" ( (type_descriptor "char" primitive_type) ) identifier) )))) ;) (labeled_statement "LAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" statement_identifier : (if_statement "if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" if (parenthesized_expression "(local_1f0[0xf] != 0)" ( (binary_expression "local_1f0[0xf] != 0" (subscript_expression "local_1f0[0xf]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" { (expression_statement "local_1fc = CONCAT31(local_1fc._1_3_,bVar40);" (assignment_expression "local_1fc = CONCAT31(local_1fc._1_3_,bVar40)" identifier = (call_expression "CONCAT31(local_1fc._1_3_,bVar40)" identifier (argument_list "(local_1fc._1_3_,bVar40)" ( (field_expression "local_1fc._1_3_" identifier . field_identifier) , identifier )))) ;) (expression_statement "*(stat64 **)(puVar34 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar34 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar34 + -8)" * (cast_expression "(stat64 **)(puVar34 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -8)" ( (binary_expression "puVar34 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar34 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar34 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar34 + -0xc)" * (cast_expression "(char **)(puVar34 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -0xc)" ( (binary_expression "puVar34 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar34 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar34 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar34 + -0x10)" * (cast_expression "(undefined4 *)(puVar34 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x10)" ( (binary_expression "puVar34 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar34 + -0x14) = 0x1674c;" (assignment_expression "*(undefined4 *)(puVar34 + -0x14) = 0x1674c" (pointer_expression "*(undefined4 *)(puVar34 + -0x14)" * (cast_expression "(undefined4 *)(puVar34 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x14)" ( (binary_expression "puVar34 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" identifier (argument_list "(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" ( (pointer_expression "*(int *)(puVar34 + -0x10)" * (cast_expression "(int *)(puVar34 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x10)" ( (binary_expression "puVar34 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar34 + -0xc)" * (cast_expression "(char **)(puVar34 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -0xc)" ( (binary_expression "puVar34 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar34 + -8)" * (cast_expression "(stat64 **)(puVar34 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -8)" ( (binary_expression "puVar34 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (expression_statement "bVar40 = (byte)local_1fc;" (assignment_expression "bVar40 = (byte)local_1fc" identifier = (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }" { (expression_statement "*(stat64 **)(puVar34 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar34 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar34 + -8)" * (cast_expression "(stat64 **)(puVar34 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -8)" ( (binary_expression "puVar34 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar34 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar34 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar34 + -0xc)" * (cast_expression "(char **)(puVar34 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar34 + -0xc)" ( (binary_expression "puVar34 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar34 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar34 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar34 + -0x10)" * (cast_expression "(int *)(puVar34 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x10)" ( (binary_expression "puVar34 + -0x10" identifier + number_literal) )))) = (subscript_expression "piVar14[0xf]" identifier [ number_literal ])) ;) (expression_statement "*(undefined4 *)(puVar34 + -0x14) = 0x16772;" (assignment_expression "*(undefined4 *)(puVar34 + -0x14) = 0x16772" (pointer_expression "*(undefined4 *)(puVar34 + -0x14)" * (cast_expression "(undefined4 *)(puVar34 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar34 + -0x14)" ( (binary_expression "puVar34 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" identifier (argument_list "()" ( ))) ;) (expression_statement "bVar40 = (byte)local_1fc;" (assignment_expression "bVar40 = (byte)local_1fc" identifier = (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) })) }))) (expression_statement "uVar9 = local_224 & 0xff;" (assignment_expression "uVar9 = local_224 & 0xff" identifier = (binary_expression "local_224 & 0xff" identifier & number_literal)) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier = (call_expression "CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier (argument_list "(local_224._1_3_,(undefined1)local_24c)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(undefined1)local_24c" ( (type_descriptor "undefined1" type_identifier) ) identifier) )))) ;) (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" identifier = identifier) ;) (goto_statement "goto LAB_00016794;" goto statement_identifier ;) })) (expression_statement "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8)" identifier = (cast_expression "(undefined1 *)((uint)local_208._1_3_ << 8)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208._1_3_ << 8)" ( (binary_expression "(uint)local_208._1_3_ << 8" (cast_expression "(uint)local_208._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_208._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier = (call_expression "CONCAT31(local_224._1_3_,(undefined1)local_24c)" identifier (argument_list "(local_224._1_3_,(undefined1)local_24c)" ( (field_expression "local_224._1_3_" identifier . field_identifier) , (cast_expression "(undefined1)local_24c" ( (type_descriptor "undefined1" type_identifier) ) identifier) )))) ;) (expression_statement "puVar29 = puVar29 + -0x20;" (assignment_expression "puVar29 = puVar29 + -0x20" identifier = (binary_expression "puVar29 + -0x20" identifier + number_literal)) ;) }) (else_clause "else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" else (compound_statement "{\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" { (labeled_statement "LAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);" statement_identifier : (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" identifier (argument_list "(local_208._1_3_,(char)local_1f0[0xb])" ( (field_expression "local_208._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) ))))) ;)) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" identifier = identifier) ;) (if_statement "if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }" if (parenthesized_expression "((char)local_1f0[0xb] != '\0')" ( (binary_expression "(char)local_1f0[0xb] != '\0'" (cast_expression "(char)local_1f0[0xb]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[0xb]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }" { (if_statement "if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }" if (parenthesized_expression "(*local_200 != '/')" ( (binary_expression "*local_200 != '/'" (pointer_expression "*local_200" * identifier) != (char_literal "'/'" ' character ')) )) (compound_statement "{\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }" { (expression_statement "uVar38 = puVar29 < (undefined1 *)0xc;" (assignment_expression "uVar38 = puVar29 < (undefined1 *)0xc" identifier = (binary_expression "puVar29 < (undefined1 *)0xc" identifier < (cast_expression "(undefined1 *)0xc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "uVar39 = puVar29 == (undefined1 *)0xc;" (assignment_expression "uVar39 = puVar29 == (undefined1 *)0xc" identifier = (binary_expression "puVar29 == (undefined1 *)0xc" identifier == (cast_expression "(undefined1 *)0xc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1667f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1667f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pbVar13 = (byte *)FUN_0001cf20();" (assignment_expression "pbVar13 = (byte *)FUN_0001cf20()" identifier = (cast_expression "(byte *)FUN_0001cf20()" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001cf20()" identifier (argument_list "()" ( ))))) ;) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) (expression_statement "pbVar35 = &DAT_0002c142;" (assignment_expression "pbVar35 = &DAT_0002c142" identifier = (pointer_expression "&DAT_0002c142" & identifier)) ;) (expression_statement "pbVar36 = pbVar13;" (assignment_expression "pbVar36 = pbVar13" identifier = identifier) ;) (do_statement "do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);" do (compound_statement "{\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              }" { (if_statement "if (iVar10 == 0) break;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = iVar10 + -1;" (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ;) (expression_statement "uVar38 = *pbVar35 < *pbVar36;" (assignment_expression "uVar38 = *pbVar35 < *pbVar36" identifier = (binary_expression "*pbVar35 < *pbVar36" (pointer_expression "*pbVar35" * identifier) < (pointer_expression "*pbVar36" * identifier))) ;) (expression_statement "uVar39 = *pbVar35 == *pbVar36;" (assignment_expression "uVar39 = *pbVar35 == *pbVar36" identifier = (binary_expression "*pbVar35 == *pbVar36" (pointer_expression "*pbVar35" * identifier) == (pointer_expression "*pbVar36" * identifier))) ;) (expression_statement "pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;" (assignment_expression "pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pbVar35 + (uint)bVar40 * -2 + 1" (binary_expression "pbVar35 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;" (assignment_expression "pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pbVar36 + (uint)bVar40 * -2 + 1" (binary_expression "pbVar36 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar39)" ( (cast_expression "(bool)uVar39" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }" if (parenthesized_expression "((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38)" ( (binary_expression "(!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38" (parenthesized_expression "(!(bool)uVar38 && !(bool)uVar39)" ( (binary_expression "!(bool)uVar38 && !(bool)uVar39" (unary_expression "!(bool)uVar38" ! (cast_expression "(bool)uVar38" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar39" ! (cast_expression "(bool)uVar39" ( (type_descriptor "bool" primitive_type) ) identifier))) )) != (cast_expression "(bool)uVar38" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }" { (expression_statement "local_20c = pbVar13;" (assignment_expression "local_20c = pbVar13" identifier = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_f4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_f4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;" (assignment_expression "*(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142" (pointer_expression "*(undefined1 **)(puVar29 + -0xc)" * (cast_expression "(undefined1 **)(puVar29 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&DAT_0002c142" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17ae0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17ae0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (if_statement "if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }" { (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(byte **)(puVar29 + -0xc) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0xc) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0xc)" * (cast_expression "(byte **)(puVar29 + -0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (if_statement "if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }" if (parenthesized_expression "((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev))))" ( (binary_expression "(iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))" ( (parenthesized_expression "((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev))" ( (binary_expression "(local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)" (parenthesized_expression "(local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_))" ( (binary_expression "local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)" (binary_expression "local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino" (binary_expression "local_98 != local_94.st_ino._4_4_" identifier != (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" identifier . field_identifier) . field_identifier)) || (binary_expression "local_9c != (int)local_94.st_ino" identifier != (cast_expression "(int)local_94.st_ino" ( (type_descriptor "int" primitive_type) ) (field_expression "local_94.st_ino" identifier . field_identifier)))) || (parenthesized_expression "(local_f4._4_4_ != local_94.st_dev._4_4_)" ( (binary_expression "local_f4._4_4_ != local_94.st_dev._4_4_" (field_expression "local_f4._4_4_" identifier . field_identifier) != (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier)) ))) )) || (parenthesized_expression "((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)" ( (binary_expression "(byte *)local_f4._0_4_ != (byte *)local_94.st_dev" (cast_expression "(byte *)local_f4._0_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._0_4_" identifier . field_identifier)) != (cast_expression "(byte *)local_94.st_dev" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_dev" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }" { (expression_statement "*(byte **)(puVar29 + -0x10) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0x10) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0x10)" * (cast_expression "(byte **)(puVar29 + -0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b37;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b37" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b49;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b49" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" identifier = (call_expression "FUN_00020700()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "%s: can make relative symbolic links only in current directory";" (assignment_expression "pcVar20 = "%s: can make relative symbolic links only in current directory"" identifier = (string_literal ""%s: can make relative symbolic links only in current directory"" " string_content ")) ;) (labeled_statement "LAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0xc) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0xc) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16e93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16e93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00016e9e" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00016e9e" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) })) (expression_statement "*(byte **)(puVar29 + -0x10) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x10) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x10)" * (cast_expression "(byte **)(puVar29 + -0x10)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x166ac;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x166ac" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) })) (expression_statement "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);" (assignment_expression "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16)" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (binary_expression "(uint)*(byte *)((int)local_1f0 + 0x16)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)((int)local_1f0 + 0x16)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x166cf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x166cf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001ade0();" (assignment_expression "iVar10 = FUN_0001ade0()" identifier = (call_expression "FUN_0001ade0()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (if_statement "if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1898c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1898c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f4 = (char *)uVar11;" (assignment_expression "local_1f4 = (char *)uVar11" identifier = (cast_expression "(char *)uVar11" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189a4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189a4" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot create symbolic link %s to %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189b9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189b9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189c0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189c0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f4;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f4" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000189d4;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000189d4" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000189d4" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000166da;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }" { (expression_statement "*(byte **)(puVar29 + -0xc) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0xc) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0xc)" * (cast_expression "(byte **)(puVar29 + -0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18382;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18382" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar40 = FUN_00014f10();" (assignment_expression "bVar40 = FUN_00014f10()" identifier = (call_expression "FUN_00014f10()" identifier (argument_list "()" ( )))) ;) (labeled_statement "joined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;" statement_identifier : (if_statement "if (bVar40 != 0) goto LAB_000166da;" if (parenthesized_expression "(bVar40 != 0)" ( (binary_expression "bVar40 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000166da;" goto statement_identifier ;))) (labeled_statement "LAB_00016fad:\n            puVar29 = puVar34;" statement_identifier : (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" identifier = identifier) ;)) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }" { (labeled_statement "LAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x177a5;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x177a5" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }" if (parenthesized_expression "(local_214 == (byte **)0x0)" ( (binary_expression "local_214 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_1b4._4_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_1b4._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_158" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18325;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18325" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001a4c0();" (call_expression "FUN_0001a4c0()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_00016fcb;" goto statement_identifier ;) })) (if_statement "if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }" if (parenthesized_expression "((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0))" ( (binary_expression "(local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)" (parenthesized_expression "(local_238 == (stat64 *)0x8000)" ( (binary_expression "local_238 == (stat64 *)0x8000" identifier == (cast_expression "(stat64 *)0x8000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)" ( (binary_expression "(local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0" (parenthesized_expression "(local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5))" ( (binary_expression "local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)" (binary_expression "local_238 != (stat64 *)0xa000" identifier != (cast_expression "(stat64 *)0xa000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) & (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) ))))) )) != number_literal) ))) )) (compound_statement "{\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }" { (expression_statement "local_244 = local_1b4._16_4_;" (assignment_expression "local_244 = local_1b4._16_4_" identifier = (field_expression "local_1b4._16_4_" identifier . field_identifier)) ;) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" identifier (argument_list "(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , (pointer_expression "*(undefined1 *)((int)local_1f0 + 0x23)" * (cast_expression "(undefined1 *)((int)local_1f0 + 0x23)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x23)" ( (binary_expression "(int)local_1f0 + 0x23" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(uint)(local_1f0[1] == 2) << 0x11" (call_expression "(uint)(local_1f0[1] == 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[1] == 2)" ( (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" identifier [ number_literal ]) == number_literal) ))) << number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b97;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b97" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_208 = (undefined1 *)FUN_0001d190();" (assignment_expression "local_208 = (undefined1 *)FUN_0001d190()" identifier = (cast_expression "(undefined1 *)FUN_0001d190()" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "((int)local_208 < 0)" ( (binary_expression "(int)local_208 < 0" (cast_expression "(int)local_208" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot open %s for reading";" (assignment_expression "pcVar20 = "cannot open %s for reading"" identifier = (string_literal ""cannot open %s for reading"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_f4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_f4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0xc) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0xc) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0xc)" * (cast_expression "(undefined1 **)(puVar29 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17bbf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17bbf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f4d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f4d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot fstat %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot fstat %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot fstat %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f62;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f62" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f69;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f69" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (goto_statement "goto LAB_00018b73;" goto statement_identifier ;) })) (if_statement "if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }" if (parenthesized_expression "((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_))" ( (binary_expression "(local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)" (parenthesized_expression "(local_158 != local_98 || local_15c != local_9c)" ( (binary_expression "local_158 != local_98 || local_15c != local_9c" (binary_expression "local_158 != local_98" identifier != identifier) || (binary_expression "local_15c != local_9c" identifier != identifier)) )) || (parenthesized_expression "(local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)" ( (binary_expression "local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_" (binary_expression "local_1b4._4_4_ != local_f4._4_4_" (field_expression "local_1b4._4_4_" identifier . field_identifier) != (field_expression "local_f4._4_4_" identifier . field_identifier)) || (binary_expression "local_1b4._0_4_ != local_f4._0_4_" (field_expression "local_1b4._0_4_" identifier . field_identifier) != (field_expression "local_f4._0_4_" identifier . field_identifier))) ))) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b5a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b5a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;" (assignment_expression "*(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""skipping file %s, as it was replaced while being copied"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b6f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b6f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00018b73;" goto statement_identifier ;) })) (expression_statement "local_284 = (uint)local_234 & 0x1ff;" (assignment_expression "local_284 = (uint)local_234 & 0x1ff" identifier = (binary_expression "(uint)local_234 & 0x1ff" (cast_expression "(uint)local_234" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }" if (parenthesized_expression "((byte)local_1f4 != '\0')" ( (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }" { (labeled_statement "LAB_00019094:\n              local_278 = local_23c;" statement_identifier : (expression_statement "local_278 = local_23c;" (assignment_expression "local_278 = local_23c" identifier = identifier) ;)) (labeled_statement "LAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);" statement_identifier : (expression_statement "pcVar19 = (code *)(~local_278 & local_284);" (assignment_expression "pcVar19 = (code *)(~local_278 & local_284)" identifier = (cast_expression "(code *)(~local_278 & local_284)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(~local_278 & local_284)" ( (binary_expression "~local_278 & local_284" (unary_expression "~local_278" ~ identifier) & identifier) )))) ;)) (expression_statement "*(code **)(puVar29 + -8) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -8) = pcVar19" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xc1;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xc1" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_21c = pcVar19;" (assignment_expression "local_21c = pcVar19" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x190c8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x190c8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = (int *)FUN_0001d190();" (assignment_expression "piVar14 = (int *)FUN_0001d190()" identifier = (cast_expression "(int *)FUN_0001d190()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_228 = piVar14;" (assignment_expression "local_228 = piVar14" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x190d5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x190d5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)__errno_location();" (assignment_expression "local_220 = (code *)__errno_location()" identifier = (cast_expression "(code *)__errno_location()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__errno_location()" identifier (argument_list "()" ( ))))) ;) (expression_statement "iVar10 = *(int *)local_220;" (assignment_expression "iVar10 = *(int *)local_220" identifier = (pointer_expression "*(int *)local_220" * (cast_expression "(int *)local_220" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);" (assignment_expression "bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f)" identifier = (binary_expression "iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f)" (binary_expression "iVar10 == 0x11" identifier == number_literal) & (call_expression "(byte)((uint)piVar14 >> 0x1f)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uint)piVar14 >> 0x1f)" ( (binary_expression "(uint)piVar14 >> 0x1f" (cast_expression "(uint)piVar14" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))))) ;) (expression_statement "local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);" (assignment_expression "local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25)" identifier = (cast_expression "(__ino_t *)CONCAT31(local_22c._1_3_,bVar25)" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_22c._1_3_,bVar25)" identifier (argument_list "(local_22c._1_3_,bVar25)" ( (field_expression "local_22c._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }" { (labeled_statement "LAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);" statement_identifier : (expression_statement "bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);" (assignment_expression "bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f)" identifier = (binary_expression "iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f)" (binary_expression "iVar10 == 0x15" identifier == number_literal) & (call_expression "(byte)((uint)local_228 >> 0x1f)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uint)local_228 >> 0x1f)" ( (binary_expression "(uint)local_228 >> 0x1f" (cast_expression "(uint)local_228" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))))) ;)) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,bVar25)" identifier (argument_list "(local_1f4._1_3_,bVar25)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (compound_statement "{\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }" { (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,1)" identifier (argument_list "(local_1f4._1_3_,1)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , number_literal ))))) ;) (if_statement "if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }" if (parenthesized_expression "(-1 < (int)local_228)" ( (binary_expression "-1 < (int)local_228" number_literal < (cast_expression "(int)local_228" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }" { (labeled_statement "LAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;" statement_identifier : (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;)) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" identifier = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17c9e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17c9e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198f9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198f9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot fstat %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot fstat %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot fstat %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1990e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1990e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19915;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19915" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019922;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019922" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019922" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "uVar11 = extraout_ECX;" (assignment_expression "uVar11 = extraout_ECX" identifier = identifier) ;) (if_statement "if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }" if (parenthesized_expression "((byte)local_20c != '\0')" ( (binary_expression "(byte)local_20c != '\0'" (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }" { (if_statement "if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }" if (parenthesized_expression "(local_1f0[0xe] != 0)" ( (binary_expression "local_1f0[0xe] != 0" (subscript_expression "local_1f0[0xe]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -8)" * (cast_expression "(undefined1 **)(puVar29 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0x40049409;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0x40049409" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d52;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d52" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" identifier = (call_expression "ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(ulong *)(puVar29 + -0xc)" * (cast_expression "(ulong *)(puVar29 + -0xc)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "uVar11 = extraout_ECX_11;" (assignment_expression "uVar11 = extraout_ECX_11" identifier = identifier) ;) (if_statement "if (iVar10 == 0) goto LAB_000194e2;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000194e2;" goto statement_identifier ;)) (if_statement "if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }" if (parenthesized_expression "(local_1f0[0xe] == 2)" ( (binary_expression "local_1f0[0xe] == 2" (subscript_expression "local_1f0[0xe]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d7d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d7d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" identifier = (call_expression "FUN_000203c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d91;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d91" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_20c = (byte *)FUN_000203c0();" (assignment_expression "local_20c = (byte *)FUN_000203c0()" identifier = (cast_expression "(byte *)FUN_000203c0()" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000203c0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "failed to clone %s from %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "failed to clone %s from %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""failed to clone %s from %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19daa;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19daa" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19db1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19db1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(byte **)(puVar29 + -0x14) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x14) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x14)" * (cast_expression "(byte **)(puVar29 + -0x14)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019dc7" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019dc7" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x17ccd;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x17ccd" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar9 = getpagesize();" (assignment_expression "uVar9 = getpagesize()" identifier = (call_expression "getpagesize()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_25c = (code *)local_94.st_blksize;" (assignment_expression "local_25c = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) (expression_statement "local_258 = (code *)local_94.st_blksize;" (assignment_expression "local_258 = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) (expression_statement "pcVar19 = (code *)(local_94.st_blksize + -0x20000);" (assignment_expression "pcVar19 = (code *)(local_94.st_blksize + -0x20000)" identifier = (cast_expression "(code *)(local_94.st_blksize + -0x20000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94.st_blksize + -0x20000)" ( (binary_expression "local_94.st_blksize + -0x20000" (field_expression "local_94.st_blksize" identifier . field_identifier) + number_literal) )))) ;) (if_statement "if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }" if (parenthesized_expression "((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000))" ( (binary_expression "(code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)" (cast_expression "(code *)0x1ffe0000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (cast_expression "(code *)(local_94.st_blksize + -0x20000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94.st_blksize + -0x20000)" ( (binary_expression "local_94.st_blksize + -0x20000" (field_expression "local_94.st_blksize" identifier . field_identifier) + number_literal) )))) )) (compound_statement "{\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }" { (expression_statement "local_258 = FUN_00020000;" (assignment_expression "local_258 = FUN_00020000" identifier = identifier) ;) (expression_statement "local_25c = (code *)0x200;" (assignment_expression "local_25c = (code *)0x200" identifier = (cast_expression "(code *)0x200" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar19 = local_25c;" (assignment_expression "pcVar19 = local_25c" identifier = identifier) ;) (if_statement "if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }" if (parenthesized_expression "((code *)(local_94.st_blksize + -1) < (code *)0x20000000)" ( (binary_expression "(code *)(local_94.st_blksize + -1) < (code *)0x20000000" (cast_expression "(code *)(local_94.st_blksize + -1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94.st_blksize + -1)" ( (binary_expression "local_94.st_blksize + -1" (field_expression "local_94.st_blksize" identifier . field_identifier) + number_literal) ))) < (cast_expression "(code *)0x20000000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }" { (expression_statement "pcVar19 = (code *)local_94.st_blksize;" (assignment_expression "pcVar19 = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) (expression_statement "local_25c = (code *)local_94.st_blksize;" (assignment_expression "local_25c = (code *)local_94.st_blksize" identifier = (cast_expression "(code *)local_94.st_blksize" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_94.st_blksize" identifier . field_identifier))) ;) })) })) (expression_statement "*(code **)(puVar29 + -4) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -4) = pcVar19" (pointer_expression "*(code **)(puVar29 + -4)" * (cast_expression "(code **)(puVar29 + -4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -8) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -8) = pcVar19" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 2;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 2" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x20) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x20) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x20)" * (cast_expression "(undefined1 **)(puVar29 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x17d28;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x17d28" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001d110();" (call_expression "FUN_0001d110()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_21c = (code *)(local_f4._16_4_ & 0xf000);" (assignment_expression "local_21c = (code *)(local_f4._16_4_ & 0xf000)" identifier = (cast_expression "(code *)(local_f4._16_4_ & 0xf000)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_f4._16_4_ & 0xf000)" ( (binary_expression "local_f4._16_4_ & 0xf000" (field_expression "local_f4._16_4_" identifier . field_identifier) & number_literal) )))) ;) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (if_statement "if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }" if (parenthesized_expression "(local_21c == (code *)0x8000)" ( (binary_expression "local_21c == (code *)0x8000" identifier == (cast_expression "(code *)0x8000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }" { (expression_statement "uVar22 = local_c4 >> 0x1f & 0x1ff;" (assignment_expression "uVar22 = local_c4 >> 0x1f & 0x1ff" identifier = (binary_expression "local_c4 >> 0x1f & 0x1ff" (binary_expression "local_c4 >> 0x1f" identifier >> number_literal) & number_literal)) ;) (expression_statement "iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);" (assignment_expression "iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_)" identifier = (binary_expression "local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_)" identifier + (cast_expression "(uint)CARRY4(uVar22,local_f4._44_4_)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar22,local_f4._44_4_)" identifier (argument_list "(uVar22,local_f4._44_4_)" ( identifier , (field_expression "local_f4._44_4_" identifier . field_identifier) )))))) ;) (expression_statement "iVar8 = iVar10 >> 9;" (assignment_expression "iVar8 = iVar10 >> 9" identifier = (binary_expression "iVar10 >> 9" identifier >> number_literal)) ;) (expression_statement "uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));" (assignment_expression "uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" identifier = (call_expression "(uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" ( (binary_expression "local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000)" identifier < (parenthesized_expression "((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000)" ( (binary_expression "(uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000" (binary_expression "(uint)(local_f4._44_4_ + uVar22) >> 9" (call_expression "(uint)(local_f4._44_4_ + uVar22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_f4._44_4_ + uVar22)" ( (binary_expression "local_f4._44_4_ + uVar22" (field_expression "local_f4._44_4_" identifier . field_identifier) + identifier) ))) >> number_literal) | (binary_expression "iVar10 * 0x800000" identifier * number_literal)) ))) )))) ;) (expression_statement "iVar10 = local_b8 - iVar8;" (assignment_expression "iVar10 = local_b8 - iVar8" identifier = (binary_expression "local_b8 - iVar8" identifier - identifier)) ;) (expression_statement "bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;" (assignment_expression "bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0" identifier = (binary_expression "(SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0" (parenthesized_expression "(SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22))" ( (binary_expression "SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)" (call_expression "SBORROW4(local_b8,iVar8)" identifier (argument_list "(local_b8,iVar8)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar10,uVar22)" identifier (argument_list "(iVar10,uVar22)" ( identifier , identifier )))) )) != (binary_expression "(int)(iVar10 - uVar22) < 0" (cast_expression "(int)(iVar10 - uVar22)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar10 - uVar22)" ( (binary_expression "iVar10 - uVar22" identifier - identifier) ))) < number_literal))) ;) })) (expression_statement "local_220 = (code *)(uVar9 - 1);" (assignment_expression "local_220 = (code *)(uVar9 - 1)" identifier = (cast_expression "(code *)(uVar9 - 1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) )))) ;) (if_statement "if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" if (parenthesized_expression "((local_94.st_mode & 0xf000) == 0x8000)" ( (binary_expression "(local_94.st_mode & 0xf000) == 0x8000" (parenthesized_expression "(local_94.st_mode & 0xf000)" ( (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" { (if_statement "if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }" if (parenthesized_expression "(local_1f0[3] != 3)" ( (binary_expression "local_1f0[3] != 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }" { (if_statement "if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }" if (parenthesized_expression "((local_1f0[3] == 2) && (bVar3))" ( (binary_expression "(local_1f0[3] == 2) && (bVar3)" (parenthesized_expression "(local_1f0[3] == 2)" ( (binary_expression "local_1f0[3] == 2" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(bVar3)" ( identifier ))) )) (compound_statement "{\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }" { (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "local_258 + uVar9" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x199e0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x199e0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" identifier = (cast_expression "(code *)FUN_00022ed0()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" identifier = (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) - (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) % identifier))) ;) (goto_statement "goto LAB_000199fc;" goto statement_identifier ;) })) (goto_statement "goto LAB_00017d9d;" goto statement_identifier ;) })) (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "local_258 + uVar9" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f62;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f62" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" identifier = (cast_expression "(code *)FUN_00022ed0()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" identifier = (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) - (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) % identifier))) ;) (if_statement "if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }" { (labeled_statement "LAB_000199fc:\n                          local_274 = local_1f0[3];" statement_identifier : (expression_statement "local_274 = local_1f0[3];" (assignment_expression "local_274 = local_1f0[3]" identifier = (subscript_expression "local_1f0[3]" identifier [ number_literal ])) ;)) (expression_statement "local_285 = (byte)local_20c;" (assignment_expression "local_285 = (byte)local_20c" identifier = (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_00019a18;" goto statement_identifier ;) })) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" identifier = (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[3] == 3)" ( (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )))) ;) }) (else_clause "else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" else (compound_statement "{\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" { (labeled_statement "LAB_00017d9d:\n                        iVar10 = local_c0;" statement_identifier : (expression_statement "iVar10 = local_c0;" (assignment_expression "iVar10 = local_c0" identifier = identifier) ;)) (if_statement "if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }" if (parenthesized_expression "(0x1ffe0000 < local_c0 - 0x20000U)" ( (binary_expression "0x1ffe0000 < local_c0 - 0x20000U" number_literal < (binary_expression "local_c0 - 0x20000U" identifier - number_literal)) )) (compound_statement "{\n                          iVar10 = 0x20000;\n                        }" { (expression_statement "iVar10 = 0x20000;" (assignment_expression "iVar10 = 0x20000" identifier = number_literal) ;) })) (expression_statement "local_220 = (code *)(0x7fffffff - uVar9);" (assignment_expression "local_220 = (code *)(0x7fffffff - uVar9)" identifier = (cast_expression "(code *)(0x7fffffff - uVar9)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(0x7fffffff - uVar9)" ( (binary_expression "0x7fffffff - uVar9" number_literal - identifier) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x20000;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x20000" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);" (assignment_expression "*(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9)" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (cast_expression "(code *)(0x7fffffff - uVar9)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(0x7fffffff - uVar9)" ( (binary_expression "0x7fffffff - uVar9" number_literal - identifier) )))) ;) (expression_statement "*(code **)(puVar29 + -0xc) = local_258;" (assignment_expression "*(code **)(puVar29 + -0xc) = local_258" (pointer_expression "*(code **)(puVar29 + -0xc)" * (cast_expression "(code **)(puVar29 + -0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17dd4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17dd4" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar19 = (code *)FUN_0001c430();" (assignment_expression "pcVar19 = (code *)FUN_0001c430()" identifier = (cast_expression "(code *)FUN_0001c430()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001c430()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }" if (parenthesized_expression "((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258)))" ( (binary_expression "(local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))" (parenthesized_expression "(local_21c == (code *)0x8000)" ( (binary_expression "local_21c == (code *)0x8000" identifier == (cast_expression "(code *)0x8000" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))" ( (binary_expression "local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258)" identifier < (cast_expression "(int)(uint)((uint)local_f4._44_4_ < local_258)" ( (type_descriptor "int" primitive_type) ) (call_expression "(uint)((uint)local_f4._44_4_ < local_258)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)local_f4._44_4_ < local_258)" ( (binary_expression "(uint)local_f4._44_4_ < local_258" (cast_expression "(uint)local_f4._44_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_f4._44_4_" identifier . field_identifier)) < identifier) ))))) ))) )) (compound_statement "{\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }" { (expression_statement "local_258 = (code *)(local_f4._44_4_ + 1);" (assignment_expression "local_258 = (code *)(local_f4._44_4_ + 1)" identifier = (cast_expression "(code *)(local_f4._44_4_ + 1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_f4._44_4_ + 1)" ( (binary_expression "local_f4._44_4_ + 1" (field_expression "local_f4._44_4_" identifier . field_identifier) + number_literal) )))) ;) })) (expression_statement "local_21c = pcVar19 + -1 + (int)local_258;" (assignment_expression "local_21c = pcVar19 + -1 + (int)local_258" identifier = (binary_expression "pcVar19 + -1 + (int)local_258" (binary_expression "pcVar19 + -1" identifier + number_literal) + (cast_expression "(int)local_258" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);" (assignment_expression "local_258 = local_21c + -((uint)local_21c % (uint)pcVar19)" identifier = (binary_expression "local_21c + -((uint)local_21c % (uint)pcVar19)" identifier + (unary_expression "-((uint)local_21c % (uint)pcVar19)" - (parenthesized_expression "((uint)local_21c % (uint)pcVar19)" ( (binary_expression "(uint)local_21c % (uint)pcVar19" (cast_expression "(uint)local_21c" ( (type_descriptor "uint" type_identifier) ) identifier) % (cast_expression "(uint)pcVar19" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) ;) (if_statement "if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }" if (parenthesized_expression "((local_258 == (code *)0x0) || (local_220 < local_258))" ( (binary_expression "(local_258 == (code *)0x0) || (local_220 < local_258)" (parenthesized_expression "(local_258 == (code *)0x0)" ( (binary_expression "local_258 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(local_220 < local_258)" ( (binary_expression "local_220 < local_258" identifier < identifier) ))) )) (compound_statement "{\n                          local_258 = pcVar19;\n                        }" { (expression_statement "local_258 = pcVar19;" (assignment_expression "local_258 = pcVar19" identifier = identifier) ;) })) (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "local_258 + uVar9" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17e2e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17e2e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" identifier = (cast_expression "(code *)FUN_00022ed0()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00022ed0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" identifier = (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) - (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((byte *)local_220 + (uVar9 - 1))" ( (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (parenthesized_expression "(uVar9 - 1)" ( (binary_expression "uVar9 - 1" identifier - number_literal) ))) ))) % identifier))) ;) (if_statement "if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }" { (expression_statement "local_285 = '\0';" (assignment_expression "local_285 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_274 = 1;" (assignment_expression "local_274 = 1" identifier = number_literal) ;) (labeled_statement "LAB_00019a18:\n                          pcVar19 = (code *)0x0;" statement_identifier : (expression_statement "pcVar19 = (code *)0x0;" (assignment_expression "pcVar19 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (expression_statement "local_21c = (code *)local_f4._44_4_;" (assignment_expression "local_21c = (code *)local_f4._44_4_" identifier = (cast_expression "(code *)local_f4._44_4_" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_f4._44_4_" identifier . field_identifier))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = local_f4._44_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_f4._44_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_f4._44_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_f4._44_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_f4._44_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_f4._44_4_" identifier . field_identifier)) ;) (expression_statement "*(__ino_t **)(puVar29 + -0xc) = &local_1d4;" (assignment_expression "*(__ino_t **)(puVar29 + -0xc) = &local_1d4" (pointer_expression "*(__ino_t **)(puVar29 + -0xc)" * (cast_expression "(__ino_t **)(puVar29 + -0xc)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_218 = local_c4;" (assignment_expression "local_218 = local_c4" identifier = identifier) ;) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19a4e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19a4e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0001a6d0();" (call_expression "FUN_0001a6d0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_254 = (code *)0x0;" (assignment_expression "local_254 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_250 = 0;" (assignment_expression "local_250 = 0" identifier = number_literal) ;) (expression_statement "local_24c = 0;" (assignment_expression "local_24c = 0" identifier = number_literal) ;) (expression_statement "local_248 = 0;" (assignment_expression "local_248 = 0" identifier = number_literal) ;) (expression_statement "local_280 = ppuVar28;" (assignment_expression "local_280 = ppuVar28" identifier = identifier) ;) (do_statement "do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');" do (compound_statement "{\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          }" { (expression_statement "*(__ino_t **)(puVar29 + -0x10) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x10) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x10)" * (cast_expression "(__ino_t **)(puVar29 + -0x10)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19a93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19a93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_0001a710();" (assignment_expression "uVar12 = FUN_0001a710()" identifier = (call_expression "FUN_0001a710()" identifier (argument_list "()" ( )))) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (if_statement "if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }" if (parenthesized_expression "((char)uVar12 == '\0')" ( (binary_expression "(char)uVar12 == '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }" { (expression_statement "uVar11 = extraout_ECX_10;" (assignment_expression "uVar11 = extraout_ECX_10" identifier = identifier) ;) (if_statement "if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }" if (parenthesized_expression "(local_1bf == '\0')" ( (binary_expression "local_1bf == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }" { (if_statement "if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }" if (parenthesized_expression "(local_1c0 == '\0')" ( (binary_expression "local_1c0 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a1b5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" identifier = (call_expression "FUN_00020700()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = ppuVar28 + -0x2aaf;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2aaf" identifier = (binary_expression "ppuVar28 + -0x2aaf" identifier + number_literal)) ;) (goto_statement "goto LAB_00019fe6;" goto statement_identifier ;) })) (expression_statement "pcVar19 = (code *)0x0;" (assignment_expression "pcVar19 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }" if (parenthesized_expression "(local_285 != '\0')" ( (binary_expression "local_285 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                  pcVar19 = local_25c;\n                                }" { (expression_statement "pcVar19 = local_25c;" (assignment_expression "pcVar19 = local_25c" identifier = identifier) ;) })) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" identifier = (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[3] == 3)" ( (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )))) ;) (expression_statement "local_25c = pcVar19;" (assignment_expression "local_25c = pcVar19" identifier = identifier) ;) (goto_statement "goto LAB_00017e78;" goto statement_identifier ;) })) (break_statement "break;" break ;) })) (if_statement "if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }" if (parenthesized_expression "(local_1c4 != (stat64 *)0x0)" ( (binary_expression "local_1c4 != (stat64 *)0x0" identifier != (cast_expression "(stat64 *)0x0" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }" { (expression_statement "local_234 = (stat64 *)0x0;" (assignment_expression "local_234 = (stat64 *)0x0" identifier = (cast_expression "(stat64 *)0x0" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_26c = pcVar19;" (assignment_expression "local_26c = pcVar19" identifier = identifier) ;) (expression_statement "local_264 = local_24c;" (assignment_expression "local_264 = local_24c" identifier = identifier) ;) (expression_statement "local_260 = local_248;" (assignment_expression "local_260 = local_248" identifier = identifier) ;) (expression_statement "local_268 = iVar10;" (assignment_expression "local_268 = iVar10" identifier = identifier) ;) (do_statement "do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);" do (compound_statement "{\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              }" { (expression_statement "puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);" (assignment_expression "puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14)" identifier = (cast_expression "(undefined4 *)(local_1bc + (int)local_234 * 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1bc + (int)local_234 * 0x14)" ( (binary_expression "local_1bc + (int)local_234 * 0x14" identifier + (binary_expression "(int)local_234 * 0x14" (cast_expression "(int)local_234" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "pcVar19 = (code *)*puVar37;" (assignment_expression "pcVar19 = (code *)*puVar37" identifier = (cast_expression "(code *)*puVar37" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar37" * identifier))) ;) (expression_statement "iVar10 = puVar37[1];" (assignment_expression "iVar10 = puVar37[1]" identifier = (subscript_expression "puVar37[1]" identifier [ number_literal ])) ;) (expression_statement "local_24c = puVar37[2];" (assignment_expression "local_24c = puVar37[2]" identifier = (subscript_expression "puVar37[2]" identifier [ number_literal ])) ;) (expression_statement "local_248 = puVar37[3];" (assignment_expression "local_248 = puVar37[3]" identifier = (subscript_expression "puVar37[3]" identifier [ number_literal ])) ;) (expression_statement "iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;" (assignment_expression "iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)" identifier = (binary_expression "puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)" (binary_expression "puVar37[3] + iVar10" (subscript_expression "puVar37[3]" identifier [ number_literal ]) + identifier) + (cast_expression "(uint)CARRY4(local_24c,(uint)pcVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_24c,(uint)pcVar19)" identifier (argument_list "(local_24c,(uint)pcVar19)" ( identifier , (cast_expression "(uint)pcVar19" ( (type_descriptor "uint" type_identifier) ) identifier) )))))) ;) (expression_statement "iVar8 = local_218 - iVar27;" (assignment_expression "iVar8 = local_218 - iVar27" identifier = (binary_expression "local_218 - iVar27" identifier - identifier)) ;) (if_statement "if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }" if (parenthesized_expression "((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0)" ( (binary_expression "(SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0" (parenthesized_expression "(SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c)))" ( (binary_expression "SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))" (call_expression "SBORROW4(local_218,iVar27)" identifier (argument_list "(local_218,iVar27)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))" identifier (argument_list "(iVar8,(uint)(local_21c < pcVar19 + local_24c))" ( identifier , (call_expression "(uint)(local_21c < pcVar19 + local_24c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19 + local_24c)" ( (binary_expression "local_21c < pcVar19 + local_24c" identifier < (binary_expression "pcVar19 + local_24c" identifier + identifier)) ))) )))) )) != (binary_expression "(int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0" (cast_expression "(int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar8 - (uint)(local_21c < pcVar19 + local_24c))" ( (binary_expression "iVar8 - (uint)(local_21c < pcVar19 + local_24c)" identifier - (call_expression "(uint)(local_21c < pcVar19 + local_24c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19 + local_24c)" ( (binary_expression "local_21c < pcVar19 + local_24c" identifier < (binary_expression "pcVar19 + local_24c" identifier + identifier)) )))) ))) < number_literal)) )) (compound_statement "{\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }" { (if_statement "if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }" if (parenthesized_expression "((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)" ( (binary_expression "(SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0" (parenthesized_expression "(SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19)))" ( (binary_expression "SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))" (call_expression "SBORROW4(local_218,iVar10)" identifier (argument_list "(local_218,iVar10)" ( identifier , identifier ))) != (call_expression "SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))" identifier (argument_list "(local_218 - iVar10,(uint)(local_21c < pcVar19))" ( (binary_expression "local_218 - iVar10" identifier - identifier) , (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19)" ( (binary_expression "local_21c < pcVar19" identifier < identifier) ))) )))) )) != (binary_expression "(int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0" (cast_expression "(int)((local_218 - iVar10) - (uint)(local_21c < pcVar19))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((local_218 - iVar10) - (uint)(local_21c < pcVar19))" ( (binary_expression "(local_218 - iVar10) - (uint)(local_21c < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" ( (binary_expression "local_218 - iVar10" identifier - identifier) )) - (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19)" ( (binary_expression "local_21c < pcVar19" identifier < identifier) )))) ))) < number_literal)) )) (compound_statement "{\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }" { (expression_statement "pcVar19 = local_21c;" (assignment_expression "pcVar19 = local_21c" identifier = identifier) ;) (expression_statement "iVar10 = local_218;" (assignment_expression "iVar10 = local_218" identifier = identifier) ;) })) (expression_statement "local_24c = (int)local_21c - (int)pcVar19;" (assignment_expression "local_24c = (int)local_21c - (int)pcVar19" identifier = (binary_expression "(int)local_21c - (int)pcVar19" (cast_expression "(int)local_21c" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);" (assignment_expression "local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19)" identifier = (binary_expression "(local_218 - iVar10) - (uint)(local_21c < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" ( (binary_expression "local_218 - iVar10" identifier - identifier) )) - (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_21c < pcVar19)" ( (binary_expression "local_21c < pcVar19" identifier < identifier) ))))) ;) })) (expression_statement "local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);" (assignment_expression "local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264)" identifier = (cast_expression "(code *)(((int)pcVar19 - (int)local_26c) - local_264)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)pcVar19 - (int)local_26c) - local_264)" ( (binary_expression "((int)pcVar19 - (int)local_26c) - local_264" (parenthesized_expression "((int)pcVar19 - (int)local_26c)" ( (binary_expression "(int)pcVar19 - (int)local_26c" (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_26c" ( (type_descriptor "int" primitive_type) ) identifier)) )) - identifier) )))) ;) (expression_statement "local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );" (assignment_expression "local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" identifier = (binary_expression "(((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (parenthesized_expression "(((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260)" ( (binary_expression "((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260" (parenthesized_expression "((iVar10 - local_268) - (uint)(pcVar19 < local_26c))" ( (binary_expression "(iVar10 - local_268) - (uint)(pcVar19 < local_26c)" (parenthesized_expression "(iVar10 - local_268)" ( (binary_expression "iVar10 - local_268" identifier - identifier) )) - (call_expression "(uint)(pcVar19 < local_26c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pcVar19 < local_26c)" ( (binary_expression "pcVar19 < local_26c" identifier < identifier) )))) )) - identifier) )) - (call_expression "(uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" ( (binary_expression "(uint)((int)pcVar19 - (int)local_26c) < local_264" (call_expression "(uint)((int)pcVar19 - (int)local_26c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pcVar19 - (int)local_26c)" ( (binary_expression "(int)pcVar19 - (int)local_26c" (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_26c" ( (type_descriptor "int" primitive_type) ) identifier)) ))) < identifier) ))))) ;) (expression_statement "local_20c = (byte *)((uint)local_20c & 0xffffff00);" (assignment_expression "local_20c = (byte *)((uint)local_20c & 0xffffff00)" identifier = (cast_expression "(byte *)((uint)local_20c & 0xffffff00)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_20c & 0xffffff00)" ( (binary_expression "(uint)local_20c & 0xffffff00" (cast_expression "(uint)local_20c" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }" if (parenthesized_expression "(local_250 != 0 || local_254 != (code *)0x0)" ( (binary_expression "local_250 != 0 || local_254 != (code *)0x0" (binary_expression "local_250 != 0" identifier != number_literal) || (binary_expression "local_254 != (code *)0x0" identifier != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0xc) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -0xc) = pcVar19" (pointer_expression "*(code **)(puVar29 + -0xc)" * (cast_expression "(code **)(puVar29 + -0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ca8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ca8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "_Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));" (assignment_expression "_Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" identifier = (call_expression "lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" identifier (argument_list "(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" * (cast_expression "(__off64_t *)(puVar29 + -0xc)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) )))) ;) (if_statement "if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }" if (parenthesized_expression "(_Var41 < 0)" ( (binary_expression "_Var41 < 0" identifier < number_literal) )) (compound_statement "{\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f22;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f22" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b)" identifier = (cast_expression "(undefined **)((int)ppuVar28 + -0xb20b)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar28 + -0xb20b)" ( (binary_expression "(int)ppuVar28 + -0xb20b" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;" statement_identifier : (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" * (cast_expression "(undefined ***)(puVar29 + -0xc)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f37;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f37" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f3e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f3e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019f49;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019f49" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019f49" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }" if (parenthesized_expression "(local_274 == 1)" ( (binary_expression "local_274 == 1" identifier == number_literal) )) (compound_statement "{\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19d2c;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19d2c" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000149e0();" (assignment_expression "cVar6 = FUN_000149e0()" identifier = (call_expression "FUN_000149e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }" { (expression_statement "*(code **)(puVar29 + -4) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -4) = pcVar19" (pointer_expression "*(code **)(puVar29 + -4)" * (cast_expression "(code **)(puVar29 + -4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a193;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a193" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" identifier = (call_expression "FUN_00020700()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = ppuVar28 + -0x2c19;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2c19" identifier = (binary_expression "ppuVar28 + -0x2c19" identifier + number_literal)) ;) (goto_statement "goto LAB_00019f2f;" goto statement_identifier ;) })) (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00019af3;" goto statement_identifier ;) })) (expression_statement "*(int *)(puVar29 + -0xc) = local_250;" (assignment_expression "*(int *)(puVar29 + -0xc) = local_250" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x10) = local_254;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_254" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ce6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ce6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000150b0();" (assignment_expression "cVar6 = FUN_000150b0()" identifier = (call_expression "FUN_000150b0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6)" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,cVar6)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,cVar6)" identifier (argument_list "(local_20c._1_3_,cVar6)" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (cVar6 != '\0') goto LAB_00019ae0;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019ae0;" goto statement_identifier ;)) (labeled_statement "LAB_00019cf7:\n                                  ppuVar28 = local_280;" statement_identifier : (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;)) (expression_statement "*(int *)(puVar29 + -0x10) = local_1bc;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_1bc" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d0d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d0d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00018028;" goto statement_identifier ;) })) (labeled_statement "LAB_00019ae0:\n                                pcVar24 = (code *)0x0;" statement_identifier : (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (if_statement "if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }" if (parenthesized_expression "(local_274 == 3)" ( (binary_expression "local_274 == 3" identifier == number_literal) )) (compound_statement "{\n                                  pcVar24 = local_25c;\n                                }" { (expression_statement "pcVar24 = local_25c;" (assignment_expression "pcVar24 = local_25c" identifier = identifier) ;) })) (labeled_statement "LAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;" statement_identifier : (expression_statement "*(undefined1 **)(puVar29 + -0x10) = &local_1dd;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = &local_1dd" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_1dd" & identifier)) ;)) (expression_statement "*(uint **)(puVar29 + -0x14) = &local_1dc;" (assignment_expression "*(uint **)(puVar29 + -0x14) = &local_1dc" (pointer_expression "*(uint **)(puVar29 + -0x14)" * (cast_expression "(uint **)(puVar29 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = (pointer_expression "&local_1dc" & identifier)) ;) (expression_statement "*(int *)(puVar29 + -0x18) = local_248;" (assignment_expression "*(int *)(puVar29 + -0x18) = local_248" (pointer_expression "*(int *)(puVar29 + -0x18)" * (cast_expression "(int *)(puVar29 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x1c) = local_24c;" (assignment_expression "*(uint *)(puVar29 + -0x1c) = local_24c" (pointer_expression "*(uint *)(puVar29 + -0x1c)" * (cast_expression "(uint *)(puVar29 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x24) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x24) = local_200" (pointer_expression "*(char **)(puVar29 + -0x24)" * (cast_expression "(char **)(puVar29 + -0x24)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" * (cast_expression "(undefined4 *)(puVar29 + -0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(code **)(puVar29 + -0x2c) = pcVar24;" (assignment_expression "*(code **)(puVar29 + -0x2c) = pcVar24" (pointer_expression "*(code **)(puVar29 + -0x2c)" * (cast_expression "(code **)(puVar29 + -0x2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x30) = local_258;" (assignment_expression "*(code **)(puVar29 + -0x30) = local_258" (pointer_expression "*(code **)(puVar29 + -0x30)" * (cast_expression "(code **)(puVar29 + -0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19b3c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19b3c" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000151c0();" (assignment_expression "cVar6 = FUN_000151c0()" identifier = (call_expression "FUN_000151c0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 == '\0') goto LAB_00019cf7;" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019cf7;" goto statement_identifier ;)) (expression_statement "local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);" (assignment_expression "local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc)" identifier = (binary_expression "iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc)" (binary_expression "iVar10 + local_1d8" identifier + identifier) + (cast_expression "(uint)CARRY4((uint)pcVar19,local_1dc)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)pcVar19,local_1dc)" identifier (argument_list "((uint)pcVar19,local_1dc)" ( (cast_expression "(uint)pcVar19" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier )))))) ;) (expression_statement "local_254 = pcVar19 + local_1dc;" (assignment_expression "local_254 = pcVar19 + local_1dc" identifier = (binary_expression "pcVar19 + local_1dc" identifier + identifier)) ;) (expression_statement "uVar38 = (byte)local_20c;" (assignment_expression "uVar38 = (byte)local_20c" identifier = (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }" if (parenthesized_expression "(local_1d8 != 0 || local_1dc != 0)" ( (binary_expression "local_1d8 != 0 || local_1dc != 0" (binary_expression "local_1d8 != 0" identifier != number_literal) || (binary_expression "local_1dc != 0" identifier != number_literal)) )) (compound_statement "{\n                                  uVar38 = local_1dd;\n                                }" { (expression_statement "uVar38 = local_1dd;" (assignment_expression "uVar38 = local_1dd" identifier = identifier) ;) })) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38)" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,uVar38)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,uVar38)" identifier (argument_list "(local_20c._1_3_,uVar38)" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }" if (parenthesized_expression "(local_250 == local_218 && pcVar19 + local_1dc == local_21c)" ( (binary_expression "local_250 == local_218 && pcVar19 + local_1dc == local_21c" (binary_expression "local_250 == local_218" identifier == identifier) && (binary_expression "pcVar19 + local_1dc == local_21c" (binary_expression "pcVar19 + local_1dc" identifier + identifier) == identifier)) )) (compound_statement "{\n                                  local_1bf = '\x01';\n                                  break;\n                                }" { (expression_statement "local_1bf = '\x01';" (assignment_expression "local_1bf = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (break_statement "break;" break ;) })) (expression_statement "local_26c = pcVar19;" (assignment_expression "local_26c = pcVar19" identifier = identifier) ;) (expression_statement "local_234 = (stat64 *)((int)&local_234->st_dev + 1);" (assignment_expression "local_234 = (stat64 *)((int)&local_234->st_dev + 1)" identifier = (cast_expression "(stat64 *)((int)&local_234->st_dev + 1)" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_234->st_dev + 1)" ( (binary_expression "(int)&local_234->st_dev + 1" (cast_expression "(int)&local_234->st_dev" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_234->st_dev" & (field_expression "local_234->st_dev" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "local_268 = iVar10;" (assignment_expression "local_268 = iVar10" identifier = identifier) ;) (expression_statement "local_264 = local_24c;" (assignment_expression "local_264 = local_24c" identifier = identifier) ;) (expression_statement "local_260 = local_248;" (assignment_expression "local_260 = local_248" identifier = identifier) ;) }) while (parenthesized_expression "(local_234 < local_1c4)" ( (binary_expression "local_234 < local_1c4" identifier < identifier) )) ;) })) (expression_statement "*(int *)(puVar29 + -0x10) = local_1bc;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_1bc" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1969a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1969a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "local_1bc = 0;" (assignment_expression "local_1bc = 0" identifier = number_literal) ;) (expression_statement "local_1c4 = (stat64 *)0x0;" (assignment_expression "local_1c4 = (stat64 *)0x0" identifier = (cast_expression "(stat64 *)0x0" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar11 = extraout_ECX_05;" (assignment_expression "uVar11 = extraout_ECX_05" identifier = identifier) ;) }) while (parenthesized_expression "(local_1bf == '\0')" ( (binary_expression "local_1bf == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" identifier = identifier) ;) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) (if_statement "if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }" if (parenthesized_expression "((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0)" ( (binary_expression "(SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0" (parenthesized_expression "(SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c)))" ( (binary_expression "SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))" (call_expression "SBORROW4(local_250,local_218)" identifier (argument_list "(local_250,local_218)" ( identifier , identifier ))) != (call_expression "SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))" identifier (argument_list "(local_250 - local_218,(uint)(local_254 < local_21c))" ( (binary_expression "local_250 - local_218" identifier - identifier) , (call_expression "(uint)(local_254 < local_21c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_254 < local_21c)" ( (binary_expression "local_254 < local_21c" identifier < identifier) ))) )))) )) == (binary_expression "(int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0" (cast_expression "(int)((local_250 - local_218) - (uint)(local_254 < local_21c))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((local_250 - local_218) - (uint)(local_254 < local_21c))" ( (binary_expression "(local_250 - local_218) - (uint)(local_254 < local_21c)" (parenthesized_expression "(local_250 - local_218)" ( (binary_expression "local_250 - local_218" identifier - identifier) )) - (call_expression "(uint)(local_254 < local_21c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_254 < local_21c)" ( (binary_expression "local_254 < local_21c" identifier < identifier) )))) ))) < number_literal)) )) (compound_statement "{\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }" { (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (if_statement "if ((byte)local_20c == '\0') goto LAB_00017ed4;" if (parenthesized_expression "((byte)local_20c == '\0')" ( (binary_expression "(byte)local_20c == '\0'" (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017ed4;" goto statement_identifier ;)) })) (if_statement "if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" if (parenthesized_expression "(local_274 == 1)" ( (binary_expression "local_274 == 1" identifier == number_literal) )) (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a279;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a279" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_000149e0();" (assignment_expression "iVar10 = FUN_000149e0()" identifier = (call_expression "FUN_000149e0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_14;" (assignment_expression "uVar11 = extraout_ECX_14" identifier = identifier) ;) (if_statement "if ((char)iVar10 == '\0') goto LAB_00019fca;" if (parenthesized_expression "((char)iVar10 == '\0')" ( (binary_expression "(char)iVar10 == '\0'" (cast_expression "(char)iVar10" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019fca;" goto statement_identifier ;)) }) (else_clause "else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" else (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = local_218;" (assignment_expression "*(int *)(puVar29 + -8) = local_218" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0xc) = local_21c;" (assignment_expression "*(code **)(puVar29 + -0xc) = local_21c" (pointer_expression "*(code **)(puVar29 + -0xc)" * (cast_expression "(code **)(puVar29 + -0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1971b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1971b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" identifier = (call_expression "ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" identifier (argument_list "(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" * (cast_expression "(__off64_t *)(puVar29 + -0xc)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "pcVar24 = local_21c;" (assignment_expression "pcVar24 = local_21c" identifier = identifier) ;) (expression_statement "pcVar19 = local_254;" (assignment_expression "pcVar19 = local_254" identifier = identifier) ;) (if_statement "if (iVar10 != 0) goto LAB_00019fca;" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00019fca;" goto statement_identifier ;)) (expression_statement "uVar11 = extraout_ECX_06;" (assignment_expression "uVar11 = extraout_ECX_06" identifier = identifier) ;) (if_statement "if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }" if (parenthesized_expression "((local_274 == 3) && (bVar3))" ( (binary_expression "(local_274 == 3) && (bVar3)" (parenthesized_expression "(local_274 == 3)" ( (binary_expression "local_274 == 3" identifier == number_literal) )) && (parenthesized_expression "(bVar3)" ( identifier ))) )) (compound_statement "{\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = extraout_EDX_00;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = extraout_EDX_00" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar10 = local_250;" (assignment_expression "iVar10 = local_250" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = extraout_EDX_00;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = extraout_EDX_00" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);" (assignment_expression "*(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19)" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(local_218 - iVar10) - (uint)(pcVar24 < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" ( (binary_expression "local_218 - iVar10" identifier - identifier) )) - (call_expression "(uint)(pcVar24 < pcVar19)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pcVar24 < pcVar19)" ( (binary_expression "pcVar24 < pcVar19" identifier < identifier) ))))) ;) (expression_statement "*(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;" (assignment_expression "*(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (binary_expression "(int)pcVar24 - (int)pcVar19" (cast_expression "(int)pcVar24" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pcVar19" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "*(int *)(puVar29 + -0x14) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x14) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x14)" * (cast_expression "(int *)(puVar29 + -0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x18) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -0x18) = pcVar19" (pointer_expression "*(code **)(puVar29 + -0x18)" * (cast_expression "(code **)(puVar29 + -0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(puVar29 + -0x20) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x20) = local_228" (pointer_expression "*(int **)(puVar29 + -0x20)" * (cast_expression "(int **)(puVar29 + -0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1976c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1976c" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));" (assignment_expression "iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" identifier = (call_expression "fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" identifier (argument_list "(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" ( (pointer_expression "*(int *)(puVar29 + -0x20)" * (cast_expression "(int *)(puVar29 + -0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0x18)" * (cast_expression "(__off64_t *)(puVar29 + -0x18)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0x10)" * (cast_expression "(__off64_t *)(puVar29 + -0x10)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (expression_statement "uVar11 = extraout_ECX_07;" (assignment_expression "uVar11 = extraout_ECX_07" identifier = identifier) ;) (if_statement "if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }" if (parenthesized_expression "(iVar8 < 0)" ( (binary_expression "iVar8 < 0" identifier < number_literal) )) (compound_statement "{\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1977c;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1977c" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_08;" (assignment_expression "uVar11 = extraout_ECX_08" identifier = identifier) ;) (if_statement "if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }" if (parenthesized_expression "((*piVar14 != 0x26) && (*piVar14 != 0x5f))" ( (binary_expression "(*piVar14 != 0x26) && (*piVar14 != 0x5f)" (parenthesized_expression "(*piVar14 != 0x26)" ( (binary_expression "*piVar14 != 0x26" (pointer_expression "*piVar14" * identifier) != number_literal) )) && (parenthesized_expression "(*piVar14 != 0x5f)" ( (binary_expression "*piVar14 != 0x5f" (pointer_expression "*piVar14" * identifier) != number_literal) ))) )) (compound_statement "{\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x197a1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x197a1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb1fb" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x197b6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x197b6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000197c1;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000197c1" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000197c1" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) })) }))) (goto_statement "goto LAB_00017ed4;" goto statement_identifier ;) })) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "local_25c = (code *)0x0;" (assignment_expression "local_25c = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" identifier = (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(local_1f0[3] == 3)" ( (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" identifier [ number_literal ]) == number_literal) )))) ;) }))) (labeled_statement "LAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;" statement_identifier : (expression_statement "*(uint **)(puVar29 + -0x10) = &local_1dc;" (assignment_expression "*(uint **)(puVar29 + -0x10) = &local_1dc" (pointer_expression "*(uint **)(puVar29 + -0x10)" * (cast_expression "(uint **)(puVar29 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = (pointer_expression "&local_1dc" & identifier)) ;)) (expression_statement "*(__ino_t **)(puVar29 + -0x14) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x14) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x14)" * (cast_expression "(__ino_t **)(puVar29 + -0x14)" ( (type_descriptor "__ino_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x24) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x24) = local_200" (pointer_expression "*(char **)(puVar29 + -0x24)" * (cast_expression "(char **)(puVar29 + -0x24)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x28) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x28) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x28)" * (cast_expression "(uint *)(puVar29 + -0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x28)" ( (binary_expression "puVar29 + -0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x2c) = local_25c;" (assignment_expression "*(code **)(puVar29 + -0x2c) = local_25c" (pointer_expression "*(code **)(puVar29 + -0x2c)" * (cast_expression "(code **)(puVar29 + -0x2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x2c)" ( (binary_expression "puVar29 + -0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x30) = local_258;" (assignment_expression "*(code **)(puVar29 + -0x30) = local_258" (pointer_expression "*(code **)(puVar29 + -0x30)" * (cast_expression "(code **)(puVar29 + -0x30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x30)" ( (binary_expression "puVar29 + -0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17ebc;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17ebc" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" * (cast_expression "(undefined4 *)(puVar29 + -0x34)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x34)" ( (binary_expression "puVar29 + -0x34" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_000151c0();" (assignment_expression "uVar12 = FUN_000151c0()" identifier = (call_expression "FUN_000151c0()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }" if (parenthesized_expression "((char)uVar12 != '\0')" ( (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }" { (expression_statement "uVar11 = extraout_ECX_00;" (assignment_expression "uVar11 = extraout_ECX_00" identifier = identifier) ;) (if_statement "if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }" if (parenthesized_expression "((char)local_1dc != '\0')" ( (binary_expression "(char)local_1dc != '\0'" (cast_expression "(char)local_1dc" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1d0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1d0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(__ino_t *)(puVar29 + -0xc) = local_1d4;" (assignment_expression "*(__ino_t *)(puVar29 + -0xc) = local_1d4" (pointer_expression "*(__ino_t *)(puVar29 + -0xc)" * (cast_expression "(__ino_t *)(puVar29 + -0xc)" ( (type_descriptor "__ino_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fbf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fbf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" identifier = (call_expression "ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" identifier (argument_list "(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" * (cast_expression "(__off64_t *)(puVar29 + -0xc)" ( (type_descriptor "__off64_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "uVar11 = extraout_ECX_13;" (assignment_expression "uVar11 = extraout_ECX_13" identifier = identifier) ;) (if_statement "if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }" { (labeled_statement "LAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;" statement_identifier : (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fd9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fd9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053)" identifier = (cast_expression "(undefined **)((int)ppuVar28 + -0xb053)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)ppuVar28 + -0xb053)" ( (binary_expression "(int)ppuVar28 + -0xb053" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (labeled_statement "LAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;" statement_identifier : (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" * (cast_expression "(undefined ***)(puVar29 + -0xc)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fee" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ff5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ff5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a002;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a002" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001a002" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) (goto_statement "goto LAB_00017ed4;" goto statement_identifier ;) })) (labeled_statement "LAB_000197c4:\n                      bVar25 = 0;" statement_identifier : (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_00018028;" goto statement_identifier ;) })) (labeled_statement "LAB_000194e2:\n                    local_220 = (code *)0x0;" statement_identifier : (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" statement_identifier : (if_statement "if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1f) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1f) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1f)" * (cast_expression "(char *)((int)local_1f0 + 0x1f)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1f)" ( (binary_expression "(int)local_1f0 + 0x1f" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" { (expression_statement "local_30 = local_174;" (assignment_expression "local_30 = local_174" identifier = identifier) ;) (expression_statement "local_2c = local_170;" (assignment_expression "local_2c = local_170" identifier = identifier) ;) (expression_statement "local_28 = local_16c;" (assignment_expression "local_28 = local_16c" identifier = identifier) ;) (expression_statement "local_24 = local_168;" (assignment_expression "local_24 = local_168" identifier = identifier) ;) (expression_statement "*(long *)(puVar29 + -4) = local_168;" (assignment_expression "*(long *)(puVar29 + -4) = local_168" (pointer_expression "*(long *)(puVar29 + -4)" * (cast_expression "(long *)(puVar29 + -4)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(__time_t **)(puVar29 + -8) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -8) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -8)" * (cast_expression "(__time_t **)(puVar29 + -8)" ( (type_descriptor "__time_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1988f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1988f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_000220c0();" (assignment_expression "iVar10 = FUN_000220c0()" identifier = (call_expression "FUN_000220c0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_09;" (assignment_expression "uVar11 = extraout_ECX_09" identifier = identifier) ;) (if_statement "if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198a9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198a9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb03f" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198be;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198be" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198c5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198c5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000198d0;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000198d0" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000198d0" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) }))) (if_statement "if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1d) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" * (cast_expression "(char *)((int)local_1f0 + 0x1d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)))" ( (parenthesized_expression "(local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))" ( (binary_expression "local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)" (binary_expression "local_1b4._24_4_ != local_94.st_uid" (field_expression "local_1b4._24_4_" identifier . field_identifier) != (field_expression "local_94.st_uid" identifier . field_identifier)) || (parenthesized_expression "(local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)" ( (comma_expression "local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid" (assignment_expression "local_94.st_uid = local_94.st_gid" (field_expression "local_94.st_uid" identifier . field_identifier) = (field_expression "local_94.st_gid" identifier . field_identifier)) , (binary_expression "local_1b4._28_4_ != local_94.st_gid" (field_expression "local_1b4._28_4_" identifier . field_identifier) != (field_expression "local_94.st_gid" identifier . field_identifier))) ))) )) ))) )) (compound_statement "{\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }" { (expression_statement "*(__uid_t *)(puVar29 + -4) = local_94.st_uid;" (assignment_expression "*(__uid_t *)(puVar29 + -4) = local_94.st_uid" (pointer_expression "*(__uid_t *)(puVar29 + -4)" * (cast_expression "(__uid_t *)(puVar29 + -4)" ( (type_descriptor "__uid_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (field_expression "local_94.st_uid" identifier . field_identifier)) ;) (expression_statement "uVar9 = (uint)local_1f4 & 0xff;" (assignment_expression "uVar9 = (uint)local_1f4 & 0xff" identifier = (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "*(stat64 **)(puVar29 + -8) = local_240;" (assignment_expression "*(stat64 **)(puVar29 + -8) = local_240" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17f33;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17f33" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00015b60();" (assignment_expression "iVar10 = FUN_00015b60()" identifier = (call_expression "FUN_00015b60()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == -1) goto LAB_000197c4;" if (parenthesized_expression "(iVar10 == -1)" ( (binary_expression "iVar10 == -1" identifier == number_literal) )) (goto_statement "goto LAB_000197c4;" goto statement_identifier ;)) (expression_statement "uVar11 = extraout_ECX_01;" (assignment_expression "uVar11 = extraout_ECX_01" identifier = identifier) ;) (if_statement "if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                        local_244 = local_244 & 0xfffff1ff;\n                      }" { (expression_statement "local_244 = local_244 & 0xfffff1ff;" (assignment_expression "local_244 = local_244 & 0xfffff1ff" identifier = (binary_expression "local_244 & 0xfffff1ff" identifier & number_literal)) ;) })) })) (if_statement "if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x27) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" * (cast_expression "(char *)((int)local_1f0 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x27)" ( (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0001950b:\n                      bVar25 = 1;\n                    }" { (labeled_statement "LAB_0001950b:\n                      bVar25 = 1;" statement_identifier : (expression_statement "bVar25 = 1;" (assignment_expression "bVar25 = 1" identifier = number_literal) ;)) }) (else_clause "else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" else (compound_statement "{\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" { (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" if (parenthesized_expression "((local_94.st_mode & 0x80) == 0)" ( (binary_expression "(local_94.st_mode & 0x80) == 0" (parenthesized_expression "(local_94.st_mode & 0x80)" ( (binary_expression "local_94.st_mode & 0x80" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19e80;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19e80" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = (int *)geteuid();" (assignment_expression "piVar14 = (int *)geteuid()" identifier = (cast_expression "(int *)geteuid()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "geteuid()" identifier (argument_list "()" ( ))))) ;) (expression_statement "piVar23 = local_228;" (assignment_expression "piVar23 = local_228" identifier = identifier) ;) (if_statement "if (piVar14 == (int *)0x0) goto LAB_00017f67;" if (parenthesized_expression "(piVar14 == (int *)0x0)" ( (binary_expression "piVar14 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00017f67;" goto statement_identifier ;)) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19ea0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19ea0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00014ac0();" (assignment_expression "iVar10 = FUN_00014ac0()" identifier = (call_expression "FUN_00014ac0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);" (assignment_expression "uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0)" identifier = (call_expression "CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0)" identifier (argument_list "((int3)((uint)iVar10 >> 8),iVar10 == 0)" ( (call_expression "(int3)((uint)iVar10 >> 8)" (parenthesized_expression "(int3)" ( identifier )) (argument_list "((uint)iVar10 >> 8)" ( (binary_expression "(uint)iVar10 >> 8" (cast_expression "(uint)iVar10" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , (binary_expression "iVar10 == 0" identifier == number_literal) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = piVar23;" (assignment_expression "*(int **)(puVar29 + -0x10) = piVar23" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ec7;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ec7" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar25 = FUN_00014b00();" (assignment_expression "bVar25 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_12;" (assignment_expression "uVar11 = extraout_ECX_12" identifier = identifier) ;) (if_statement "if (bVar25 == 0) goto LAB_00017f99;" if (parenthesized_expression "(bVar25 == 0)" ( (binary_expression "bVar25 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00017f99;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" else (compound_statement "{\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" { (labeled_statement "LAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;" statement_identifier : (expression_statement "*(int **)(puVar29 + -4) = piVar14;" (assignment_expression "*(int **)(puVar29 + -4) = piVar14" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(int **)(puVar29 + -8) = piVar14;" (assignment_expression "*(int **)(puVar29 + -8) = piVar14" (pointer_expression "*(int **)(puVar29 + -8)" * (cast_expression "(int **)(puVar29 + -8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17f8c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17f8c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = FUN_00014b00();" (assignment_expression "uVar12 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar11 = extraout_ECX_02;" (assignment_expression "uVar11 = extraout_ECX_02" identifier = identifier) ;) (if_statement "if ((char)uVar12 != '\0') goto LAB_0001950b;" if (parenthesized_expression "((char)uVar12 != '\0')" ( (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001950b;" goto statement_identifier ;)) (labeled_statement "LAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));" statement_identifier : (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" identifier (argument_list "(local_20c._1_3_,*(byte *)(local_1f0 + 10))" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 10)" * (cast_expression "(byte *)(local_1f0 + 10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 10)" ( (binary_expression "local_1f0 + 10" identifier + number_literal) )))) ))))) ;)) (expression_statement "bVar25 = *(byte *)(local_1f0 + 10) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 10) ^ 1" identifier = (binary_expression "*(byte *)(local_1f0 + 10) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 10)" * (cast_expression "(byte *)(local_1f0 + 10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 10)" ( (binary_expression "local_1f0 + 10" identifier + number_literal) )))) ^ number_literal)) ;) }))) (if_statement "if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }" if (parenthesized_expression "((char)uVar12 != '\0')" ( (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x17fd3;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x17fd3" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00014ac0();" (call_expression "FUN_00014ac0()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = extraout_ECX_03;" (assignment_expression "uVar11 = extraout_ECX_03" identifier = identifier) ;) })) }))) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" identifier = identifier) ;) (if_statement "if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1e) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1e)" * (cast_expression "(char *)((int)local_1f0 + 0x1e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1e)" ( (binary_expression "(int)local_1f0 + 0x1e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }" { (if_statement "if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" * (cast_expression "(char *)((int)local_1f0 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2b)" ( (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }" { (expression_statement "bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);" (assignment_expression "bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8)" identifier = (binary_expression "(byte)local_1f4 & *(byte *)(local_1f0 + 8)" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) & (pointer_expression "*(byte *)(local_1f0 + 8)" * (cast_expression "(byte *)(local_1f0 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 8)" ( (binary_expression "local_1f0 + 8" identifier + number_literal) )))))) ;) (if_statement "if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" if (parenthesized_expression "(bVar40 == 0)" ( (binary_expression "bVar40 == 0" identifier == number_literal) )) (compound_statement "{\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }" { (if_statement "if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }" if (parenthesized_expression "(local_278 != 0)" ( (binary_expression "local_278 != 0" identifier != number_literal) )) (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a00f;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a00f" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar9 = FUN_00015d90();" (assignment_expression "uVar9 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }" if (parenthesized_expression "((local_278 & ~uVar9) != 0)" ( (binary_expression "(local_278 & ~uVar9) != 0" (parenthesized_expression "(local_278 & ~uVar9)" ( (binary_expression "local_278 & ~uVar9" identifier & (unary_expression "~uVar9" ~ identifier)) )) != number_literal) )) (compound_statement "{\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a034;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a034" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00014ac0();" (assignment_expression "iVar10 = FUN_00014ac0()" identifier = (call_expression "FUN_00014ac0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a04b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a04b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_21c = (code *)FUN_00020540();" (assignment_expression "local_21c = (code *)FUN_00020540()" identifier = (cast_expression "(code *)FUN_00020540()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00020540()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb027" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a064;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a064" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_20c = (byte *)dcgettext();" (assignment_expression "local_20c = (byte *)dcgettext()" identifier = (cast_expression "(byte *)dcgettext()" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a06f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a06f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" identifier = identifier) ;) (expression_statement "*(code **)(puVar29 + -0x14) = local_21c;" (assignment_expression "*(code **)(puVar29 + -0x14) = local_21c" (pointer_expression "*(code **)(puVar29 + -0x14)" * (cast_expression "(code **)(puVar29 + -0x14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(byte **)(puVar29 + -0x18) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x18) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x18)" * (cast_expression "(byte **)(puVar29 + -0x18)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a086;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a086" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001a086" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) })) })) }) (else_clause "else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" else (compound_statement "{\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" { (expression_statement "local_20c = (byte *)((uint)local_20c & 0xffffff00);" (assignment_expression "local_20c = (byte *)((uint)local_20c & 0xffffff00)" identifier = (cast_expression "(byte *)((uint)local_20c & 0xffffff00)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_20c & 0xffffff00)" ( (binary_expression "(uint)local_20c & 0xffffff00" (cast_expression "(uint)local_20c" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a1d2;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a1d2" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar42 = FUN_00015d90();" (assignment_expression "uVar42 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);" (assignment_expression "*(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20)" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (cast_expression "(int)((ulonglong)uVar42 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar42 >> 0x20)" ( (binary_expression "(ulonglong)uVar42 >> 0x20" (cast_expression "(ulonglong)uVar42" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "*(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;" (assignment_expression "*(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (binary_expression "~(uint)uVar42 & 0x1b6" (unary_expression "~(uint)uVar42" ~ (cast_expression "(uint)uVar42" ( (type_descriptor "uint" type_identifier) ) identifier)) & number_literal)) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a1ec" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" identifier = (call_expression "FUN_0001b7d0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40)" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar40)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,bVar40)" identifier (argument_list "(local_1f4._1_3_,bVar40)" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                            bVar25 = (byte)local_20c;\n                          }" { (expression_statement "bVar25 = (byte)local_20c;" (assignment_expression "bVar25 = (byte)local_20c" identifier = (cast_expression "(byte)local_20c" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) })) }))) }) (else_clause "else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" else (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = piVar14[4];" (assignment_expression "*(int *)(puVar29 + -8) = piVar14[4]" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (subscript_expression "piVar14[4]" identifier [ number_literal ])) ;) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0e8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" identifier = (call_expression "FUN_0001b7d0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                          bVar25 = 0;\n                        }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) })) }))) }) (else_clause "else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" else (compound_statement "{\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" { (expression_statement "*(uint *)(puVar29 + -0x10) = local_244;" (assignment_expression "*(uint *)(puVar29 + -0x10) = local_244" (pointer_expression "*(uint *)(puVar29 + -0x10)" * (cast_expression "(uint *)(puVar29 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -0x14) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x14) = local_228" (pointer_expression "*(int **)(puVar29 + -0x14)" * (cast_expression "(int **)(puVar29 + -0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x18) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x18) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x18)" * (cast_expression "(char **)(puVar29 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x1c) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x1c) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x1c)" * (cast_expression "(undefined1 **)(puVar29 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1961d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1961d" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b720();" (assignment_expression "iVar10 = FUN_0001b720()" identifier = (call_expression "FUN_0001b720()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }" if (parenthesized_expression "((iVar10 != 0) && ((char)local_1f0[9] != '\0'))" ( (binary_expression "(iVar10 != 0) && ((char)local_1f0[9] != '\0')" (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) && (parenthesized_expression "((char)local_1f0[9] != '\0')" ( (binary_expression "(char)local_1f0[9] != '\0'" (cast_expression "(char)local_1f0[9]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[9]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                        bVar25 = 0;\n                      }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) })) }))) (goto_statement "goto LAB_00018028;" goto statement_identifier ;) })) }) (else_clause "else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" else (compound_statement "{\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" { (expression_statement "iVar10 = 0x15;" (assignment_expression "iVar10 = 0x15" identifier = number_literal) ;) (if_statement "if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }" if (parenthesized_expression "(*local_1f8 != '\0')" ( (binary_expression "*local_1f8 != '\0'" (pointer_expression "*local_1f8" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }" { (expression_statement "uVar9 = 0xffffffff;" (assignment_expression "uVar9 = 0xffffffff" identifier = number_literal) ;) (expression_statement "pcVar20 = local_1f8;" (assignment_expression "pcVar20 = local_1f8" identifier = identifier) ;) (do_statement "do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');" do (compound_statement "{\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    }" { (if_statement "if (uVar9 == 0) break;" if (parenthesized_expression "(uVar9 == 0)" ( (binary_expression "uVar9 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar9 = uVar9 - 1;" (assignment_expression "uVar9 = uVar9 - 1" identifier = (binary_expression "uVar9 - 1" identifier - number_literal)) ;) (expression_statement "cVar6 = *pcVar20;" (assignment_expression "cVar6 = *pcVar20" identifier = (pointer_expression "*pcVar20" * identifier)) ;) (expression_statement "pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;" (assignment_expression "pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pcVar20 + (uint)bVar40 * -2 + 1" (binary_expression "pcVar20 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;" (assignment_expression "iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14" identifier = (binary_expression "(local_1f8[~uVar9 - 2] != '/') + 0x14" (parenthesized_expression "(local_1f8[~uVar9 - 2] != '/')" ( (binary_expression "local_1f8[~uVar9 - 2] != '/'" (subscript_expression "local_1f8[~uVar9 - 2]" identifier [ (binary_expression "~uVar9 - 2" (unary_expression "~uVar9" ~ identifier) - number_literal) ]) != (char_literal "'/'" ' character ')) )) + number_literal)) ;) })) }))) }) (else_clause "else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" else (compound_statement "{\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" { (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" identifier = number_literal) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" identifier (argument_list "(local_1f4._1_3_,(char)local_1f0[6])" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) ))))) ;) (if_statement "if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }" if (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }" { (expression_statement "*(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);" (assignment_expression "*(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25)" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (call_expression "CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25)" identifier (argument_list "((int3)((uint)extraout_EDX >> 8),bVar25)" ( (call_expression "(int3)((uint)extraout_EDX >> 8)" (parenthesized_expression "(int3)" ( identifier )) (argument_list "((uint)extraout_EDX >> 8)" ( (binary_expression "(uint)extraout_EDX >> 8" (cast_expression "(uint)extraout_EDX" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal) ))) , identifier )))) ;) (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x193f6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x193f6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }" if (parenthesized_expression "((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000))" ( (binary_expression "(iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)" (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) && (parenthesized_expression "((local_94.st_mode & 0xf000) == 0xa000)" ( (binary_expression "(local_94.st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_94.st_mode & 0xf000)" ( (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" identifier . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }" { (expression_statement "uVar9 = (uint)*(byte *)(local_1f0 + 0xc);" (assignment_expression "uVar9 = (uint)*(byte *)(local_1f0 + 0xc)" identifier = (binary_expression "(uint)*(byte *)(local_1f0 + 0xc)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_1f0 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 0xc)" ( (binary_expression "local_1f0 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }" if (parenthesized_expression "(*(byte *)(local_1f0 + 0xc) == 0)" ( (binary_expression "*(byte *)(local_1f0 + 0xc) == 0" (pointer_expression "*(byte *)(local_1f0 + 0xc)" * (cast_expression "(byte *)(local_1f0 + 0xc)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 0xc)" ( (binary_expression "local_1f0 + 0xc" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }" { (expression_statement "*(uint *)(puVar29 + -4) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -4) = uVar9" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -8) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -8) = uVar9" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a217;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a217" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""not writing through dangling symlink %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a22c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a22c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a237;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a237" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001a237" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(uint *)(puVar29 + -4) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -4) = uVar9" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(code **)(puVar29 + -8) = local_21c;" (assignment_expression "*(code **)(puVar29 + -8) = local_21c" (pointer_expression "*(code **)(puVar29 + -8)" * (cast_expression "(code **)(puVar29 + -8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0x41;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0x41" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19434;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19434" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_228 = (int *)FUN_0001d190();" (assignment_expression "local_228 = (int *)FUN_0001d190()" identifier = (cast_expression "(int *)FUN_0001d190()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (expression_statement "iVar10 = *(int *)local_220;" (assignment_expression "iVar10 = *(int *)local_220" identifier = (pointer_expression "*(int *)local_220" * (cast_expression "(int *)local_220" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) })) (goto_statement "goto LAB_00019445;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19126;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19126" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create regular file %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create regular file %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot create regular file %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1913b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1913b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (labeled_statement "LAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018b7c" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018b7c" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;" (assignment_expression "*(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201" (parenthesized_expression "(-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00)" ( (binary_expression "-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00" (unary_expression "-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0')" - (call_expression "(uint)(*(char *)((int)local_1f0 + 0x23) == '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(char *)((int)local_1f0 + 0x23) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x23) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x23)" * (cast_expression "(char *)((int)local_1f0 + 0x23)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x23)" ( (binary_expression "(int)local_1f0 + 0x23" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )))) & number_literal) )) + number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17c4d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17c4d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_228 = (int *)FUN_0001d190();" (assignment_expression "local_228 = (int *)FUN_0001d190()" identifier = (cast_expression "(int *)FUN_0001d190()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001d190()" identifier (argument_list "()" ( ))))) ;) (expression_statement "piVar23 = local_1f0;" (assignment_expression "piVar23 = local_1f0" identifier = identifier) ;) (if_statement "if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" if (parenthesized_expression "((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               )" ( (binary_expression "(*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')" (parenthesized_expression "(*(char *)((int)piVar14 + 0x21) == '\0')" ( (binary_expression "*(char *)((int)piVar14 + 0x21) == '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x21)" * (cast_expression "(char *)((int)piVar14 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x21)" ( (binary_expression "(int)piVar14 + 0x21" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)((int)piVar14 + 0x25) == '\0')" ( (binary_expression "*(char *)((int)piVar14 + 0x25) == '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x25)" * (cast_expression "(char *)((int)piVar14 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 0x25)" ( (binary_expression "(int)piVar14 + 0x25" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }" { (if_statement "if (-1 < (int)local_228) goto LAB_00017c77;" if (parenthesized_expression "(-1 < (int)local_228)" ( (binary_expression "-1 < (int)local_228" number_literal < (cast_expression "(int)local_228" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_00017c77;" goto statement_identifier ;)) (labeled_statement "LAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;" statement_identifier : (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19270;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19270" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "piVar23 = __errno_location();" (assignment_expression "piVar23 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x16) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x16) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x16)" * (cast_expression "(char *)((int)local_1f0 + 0x16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }" { (expression_statement "iVar10 = *piVar23;" (assignment_expression "iVar10 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (if_statement "if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }" if (parenthesized_expression "((iVar10 == 2) && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(iVar10 == 2) && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(iVar10 == 2)" ( (binary_expression "iVar10 == 2" identifier == number_literal) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }" { (expression_statement "local_278 = 0;" (assignment_expression "local_278 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_000190a0;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" identifier = (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" ( (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (goto_statement "goto LAB_00019116;" goto statement_identifier ;) })) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19290;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19290" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = unlink(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = unlink(*(char **)(puVar29 + -0x10))" identifier = (call_expression "unlink(*(char **)(puVar29 + -0x10))" identifier (argument_list "(*(char **)(puVar29 + -0x10))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }" { (expression_statement "*(int **)(puVar29 + -4) = piVar14;" (assignment_expression "*(int **)(puVar29 + -4) = piVar14" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int **)(puVar29 + -8) = piVar14;" (assignment_expression "*(int **)(puVar29 + -8) = piVar14" (pointer_expression "*(int **)(puVar29 + -8)" * (cast_expression "(int **)(puVar29 + -8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a104;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a104" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot remove %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot remove %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot remove %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a119;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a119" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar23;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar23" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar23" * identifier)) ;) (goto_statement "goto LAB_00018b73;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" * (cast_expression "(char *)((int)local_1f0 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2e)" ( (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = extraout_ECX_04;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = extraout_ECX_04" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = extraout_ECX_04;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = extraout_ECX_04" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0aa" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "removed %s\n";" (assignment_expression "*(char **)(puVar29 + -0xc) = "removed %s\n"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""removed %s\n"" " string_content escape_sequence ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0bf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0cb" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_278 = local_23c;" (assignment_expression "local_278 = local_23c" identifier = identifier) ;) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000190a0;" goto statement_identifier ;)) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = local_284;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_284" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" * (cast_expression "(char **)(puVar29 + -0x1c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x192f1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x192f1" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" identifier = (call_expression "FUN_000156e0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') goto LAB_00019094;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00019094;" goto statement_identifier ;)) (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" else (compound_statement "{\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" { (if_statement "if ((int)local_228 < 0) goto LAB_0001926b;" if (parenthesized_expression "((int)local_228 < 0)" ( (binary_expression "(int)local_228 < 0" (cast_expression "(int)local_228" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_0001926b;" goto statement_identifier ;)) (expression_statement "bVar40 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar40 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)bVar40;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)bVar40" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1952e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1952e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00015960();" (assignment_expression "cVar6 = FUN_00015960()" identifier = (call_expression "FUN_00015960()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }" { (labeled_statement "LAB_00017c77:\n                local_278 = 0;" statement_identifier : (expression_statement "local_278 = 0;" (assignment_expression "local_278 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_00017c81;" goto statement_identifier ;) })) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)piVar23 + 0x26)" * (cast_expression "(char *)((int)piVar23 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar23 + 0x26)" ( (binary_expression "(int)piVar23 + 0x26" (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (if_statement "if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;" if (parenthesized_expression "(*(char *)((int)piVar23 + 0x26) == '\0')" ( (binary_expression "*(char *)((int)piVar23 + 0x26) == '\0'" (pointer_expression "*(char *)((int)piVar23 + 0x26)" * (cast_expression "(char *)((int)piVar23 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar23 + 0x26)" ( (binary_expression "(int)piVar23 + 0x26" (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00017c77;" goto statement_identifier ;)) (expression_statement "local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4._1_3_ << 8)" identifier = (cast_expression "(char *)((uint)local_1f4._1_3_ << 8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_1f4._1_3_ << 8)" ( (binary_expression "(uint)local_1f4._1_3_ << 8" (cast_expression "(uint)local_1f4._1_3_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_1f4._1_3_" identifier . field_identifier)) << number_literal) )))) ;) (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" identifier = (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (labeled_statement "LAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;" statement_identifier : (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18036;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18036" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = close(*(int *)(puVar29 + -0x10));" (assignment_expression "iVar10 = close(*(int *)(puVar29 + -0x10))" identifier = (call_expression "close(*(int *)(puVar29 + -0x10))" identifier (argument_list "(*(int *)(puVar29 + -0x10))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1964e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1964e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb009" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19663;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19663" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1966a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1966a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019677;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019677" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00019677" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) }))) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18056;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18056" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = close(*(int *)(puVar29 + -0x10));" (assignment_expression "iVar10 = close(*(int *)(puVar29 + -0x10))" identifier = (call_expression "close(*(int *)(puVar29 + -0x10))" identifier (argument_list "(*(int *)(puVar29 + -0x10))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e7e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e7e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb009" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e9a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e9a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018ea5" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00018ea5" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(code **)(puVar29 + -0x10) = local_220;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_220" (pointer_expression "*(code **)(puVar29 + -0x10)" * (cast_expression "(code **)(puVar29 + -0x10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1806f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1806f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "bVar40 = bVar25;" (assignment_expression "bVar40 = bVar25" identifier = identifier) ;) (goto_statement "goto joined_r0x00018387;" goto statement_identifier ;) })) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (if_statement "if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" if (parenthesized_expression "(local_238 == (stat64 *)0x1000)" ( (binary_expression "local_238 == (stat64 *)0x1000" identifier == (cast_expression "(stat64 *)0x1000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }" { (expression_statement "local_94.st_dev._0_4_ = (byte *)0x0;" (assignment_expression "local_94.st_dev._0_4_ = (byte *)0x0" (field_expression "local_94.st_dev._0_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_94.st_dev._4_4_ = 0;" (assignment_expression "local_94.st_dev._4_4_ = 0" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "uVar9 = ~local_23c & local_204;" (assignment_expression "uVar9 = ~local_23c & local_204" identifier = (binary_expression "~local_23c & local_204" (unary_expression "~local_23c" ~ identifier) & identifier)) ;) (expression_statement "*(stat64 **)(puVar29 + -4) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -4) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -4)" * (cast_expression "(stat64 **)(puVar29 + -4)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "*(uint *)(puVar29 + -8) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -8) = uVar9" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18dbe;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18dbe" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));" (assignment_expression "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier = (call_expression "__xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -8)" * (cast_expression "(__mode_t *)(puVar29 + -8)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) , (pointer_expression "*(__dev_t **)(puVar29 + -4)" * (cast_expression "(__dev_t **)(puVar29 + -4)" ( (type_descriptor "__dev_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) )))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }" { (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "uVar9 & 0xffffefff" identifier & number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18de5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18de5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier = (call_expression "mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0xc)" * (cast_expression "(__mode_t *)(puVar29 + -0xc)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e07;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e07" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot create fifo %s";" (assignment_expression "pcVar20 = "cannot create fifo %s"" identifier = (string_literal ""cannot create fifo %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) })) }) (else_clause "else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" else (if_statement "if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" if (parenthesized_expression "(((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000)" ( (binary_expression "((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000" (binary_expression "((uint)local_238 & 0xffffbfff) == 0x2000" (parenthesized_expression "((uint)local_238 & 0xffffbfff)" ( (binary_expression "(uint)local_238 & 0xffffbfff" (cast_expression "(uint)local_238" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) || (binary_expression "local_238 == (stat64 *)0xc000" identifier == (cast_expression "(stat64 *)0xc000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }" { (expression_statement "local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;" (assignment_expression "local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_" (field_expression "local_94.st_dev._0_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = (cast_expression "(byte *)local_1b4._32_4_" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_1b4._32_4_" identifier . field_identifier))) ;) (expression_statement "*(stat64 **)(puVar29 + -4) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -4) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -4)" * (cast_expression "(stat64 **)(puVar29 + -4)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (pointer_expression "&local_94" & identifier)) ;) (expression_statement "local_94.st_dev._4_4_ = local_190;" (assignment_expression "local_94.st_dev._4_4_ = local_190" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -8) = ~local_23c & local_204;" (assignment_expression "*(uint *)(puVar29 + -8) = ~local_23c & local_204" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (binary_expression "~local_23c & local_204" (unary_expression "~local_23c" ~ identifier) & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16f59;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16f59" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));" (assignment_expression "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier = (call_expression "__xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -8)" * (cast_expression "(__mode_t *)(puVar29 + -8)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) , (pointer_expression "*(__dev_t **)(puVar29 + -4)" * (cast_expression "(__dev_t **)(puVar29 + -4)" ( (type_descriptor "__dev_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) )))) ;) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" identifier = (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)local_208 & 0xffffff00)" ( (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) ;) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16f7c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16f7c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot create special file %s";" (assignment_expression "pcVar20 = "cannot create special file %s"" identifier = (string_literal ""cannot create special file %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) }) (else_clause "else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" else (compound_statement "{\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" { (if_statement "if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }" if (parenthesized_expression "(local_238 != (stat64 *)0xa000)" ( (binary_expression "local_238 != (stat64 *)0xa000" identifier != (cast_expression "(stat64 *)0xa000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }" { (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e30;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e30" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "%s has unknown file type";" (assignment_expression "pcVar20 = "%s has unknown file type"" identifier = (string_literal ""%s has unknown file type"" " string_content ")) ;) (goto_statement "goto LAB_00016e8b;" goto statement_identifier ;) })) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = local_188;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = local_188" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a38;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a38" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = (char *)FUN_0001b850();" (assignment_expression "pcVar20 = (char *)FUN_0001b850()" identifier = (cast_expression "(char *)FUN_0001b850()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0001b850()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }" if (parenthesized_expression "(pcVar20 == (char *)0x0)" ( (binary_expression "pcVar20 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x194d0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x194d0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" identifier = (binary_expression "puVar29 + -8" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar20 = "cannot read symbolic link %s";" (assignment_expression "pcVar20 = "cannot read symbolic link %s"" identifier = (string_literal ""cannot read symbolic link %s"" " string_content ")) ;) (goto_statement "goto LAB_00016f90;" goto statement_identifier ;) })) (expression_statement "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);" (assignment_expression "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16)" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (binary_expression "(uint)*(byte *)((int)local_1f0 + 0x16)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)((int)local_1f0 + 0x16)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x16)" ( (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" * (cast_expression "(char **)(puVar29 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a5e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a5e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001ade0();" (assignment_expression "iVar10 = FUN_0001ade0()" identifier = (call_expression "FUN_0001ade0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19315;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19315" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_208 = (undefined1 *)*piVar14;" (assignment_expression "local_208 = (undefined1 *)*piVar14" identifier = (cast_expression "(undefined1 *)*piVar14" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (if_statement "if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;" if (parenthesized_expression "((undefined1 *)*piVar14 == (undefined1 *)0x0)" ( (binary_expression "(undefined1 *)*piVar14 == (undefined1 *)0x0" (cast_expression "(undefined1 *)*piVar14" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier)) == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00018a69;" goto statement_identifier ;)) (if_statement "if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }" if (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000))" ( (binary_expression "((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2d) != '\x01')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2d) != '\x01'" (pointer_expression "*(char *)((int)local_1f0 + 0x2d)" * (cast_expression "(char *)((int)local_1f0 + 0x2d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2d)" ( (binary_expression "(int)local_1f0 + 0x2d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\x01'" ' escape_sequence ')) )) || (parenthesized_expression "((byte)local_1f4 != '\0')" ( (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "((local_154.st_mode & 0xf000) != 0xa000)" ( (binary_expression "(local_154.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_154.st_mode & 0xf000)" ( (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" identifier . field_identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }" { (labeled_statement "LAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19347;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19347" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19356;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19356" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""cannot create symbolic link %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1936b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1936b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x1c) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x1c) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x1c)" * (cast_expression "(undefined1 **)(puVar29 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001937a;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001937a" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001937a" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "uVar9 = 0xffffffff;" (assignment_expression "uVar9 = 0xffffffff" identifier = number_literal) ;) (expression_statement "pcVar18 = pcVar20;" (assignment_expression "pcVar18 = pcVar20" identifier = identifier) ;) (do_statement "do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');" do (compound_statement "{\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              }" { (if_statement "if (uVar9 == 0) break;" if (parenthesized_expression "(uVar9 == 0)" ( (binary_expression "uVar9 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar9 = uVar9 - 1;" (assignment_expression "uVar9 = uVar9 - 1" identifier = (binary_expression "uVar9 - 1" identifier - number_literal)) ;) (expression_statement "cVar6 = *pcVar18;" (assignment_expression "cVar6 = *pcVar18" identifier = (pointer_expression "*pcVar18" * identifier)) ;) (expression_statement "pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;" (assignment_expression "pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1" identifier = (binary_expression "pcVar18 + (uint)bVar40 * -2 + 1" (binary_expression "pcVar18 + (uint)bVar40 * -2" identifier + (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "iVar10 = ~uVar9 - 1;" (assignment_expression "iVar10 = ~uVar9 - 1" identifier = (binary_expression "~uVar9 - 1" (unary_expression "~uVar9" ~ identifier) - number_literal)) ;) (if_statement "if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;" if (parenthesized_expression "((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))" ( (binary_expression "(local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10)" (parenthesized_expression "(local_154.st_size._4_4_ != 0)" ( (binary_expression "local_154.st_size._4_4_ != 0" (field_expression "local_154.st_size._4_4_" (field_expression "local_154.st_size" identifier . field_identifier) . field_identifier) != number_literal) )) || (parenthesized_expression "((int)local_154.st_size != iVar10)" ( (binary_expression "(int)local_154.st_size != iVar10" (cast_expression "(int)local_154.st_size" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_size" identifier . field_identifier)) != identifier) ))) )) (goto_statement "goto LAB_0001933e;" goto statement_identifier ;)) (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)local_154.st_size;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)local_154.st_size" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (cast_expression "(int)local_154.st_size" ( (type_descriptor "int" primitive_type) ) (field_expression "local_154.st_size" identifier . field_identifier))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e2b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e2b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b850();" (assignment_expression "iVar10 = FUN_0001b850()" identifier = (call_expression "FUN_0001b850()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) goto LAB_0001933e;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001933e;" goto statement_identifier ;)) (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0xc) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e41;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e41" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier = (call_expression "strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }" { (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a12b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a12b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (goto_statement "goto LAB_0001933e;" goto statement_identifier ;) })) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e55;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e55" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e5d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e5d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" else (compound_statement "{\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" { (labeled_statement "LAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a72;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a72" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" identifier (argument_list "(*(void **)(puVar29 + -0x10))" ( (pointer_expression "*(void **)(puVar29 + -0x10)" * (cast_expression "(void **)(puVar29 + -0x10)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) ))) ;) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" * (cast_expression "(char *)((int)local_1f0 + 0x25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x193dc;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x193dc" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1)" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,1)" identifier (argument_list "(local_208._1_3_,1)" ( (field_expression "local_208._1_3_" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "bVar40 = *(byte *)((int)local_1f0 + 0x1d);" (assignment_expression "bVar40 = *(byte *)((int)local_1f0 + 0x1d)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x1d)" * (cast_expression "(byte *)((int)local_1f0 + 0x1d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "bVar25 = bVar40;" (assignment_expression "bVar25 = bVar40" identifier = identifier) ;) (if_statement "if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }" if (parenthesized_expression "(bVar40 != 0)" ( (binary_expression "bVar40 != 0" identifier != number_literal) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._28_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (field_expression "local_1b4._28_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (field_expression "local_1b4._24_4_" identifier . field_identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18aba;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18aba" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));" (assignment_expression "iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" identifier = (call_expression "lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__uid_t *)(puVar29 + -0xc)" * (cast_expression "(__uid_t *)(puVar29 + -0xc)" ( (type_descriptor "__uid_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(__gid_t *)(puVar29 + -8)" * (cast_expression "(__gid_t *)(puVar29 + -8)" ( (type_descriptor "__gid_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }" { (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40)" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,bVar40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,bVar40)" identifier (argument_list "(local_208._1_3_,bVar40)" ( (field_expression "local_208._1_3_" identifier . field_identifier) , identifier ))))) ;) }) (else_clause "else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" else (compound_statement "{\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" { (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" * (cast_expression "(int **)(puVar29 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18ad3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18ad3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00015b20();" (assignment_expression "cVar6 = FUN_00015b20()" identifier = (call_expression "FUN_00015b20()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6)" identifier = (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,cVar6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_208._1_3_,cVar6)" identifier (argument_list "(local_208._1_3_,cVar6)" ( (field_expression "local_208._1_3_" identifier . field_identifier) , identifier ))))) ;) (if_statement "if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }" { (expression_statement "*(char **)(puVar29 + -4) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -4) = pcVar20" (pointer_expression "*(char **)(puVar29 + -4)" * (cast_expression "(char **)(puVar29 + -4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (string_literal ""failed to preserve ownership for %s"" " string_content ")) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19574;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19574" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1957b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1957b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar29 + -0x14) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x14) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x14)" * (cast_expression "(char **)(puVar29 + -0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" * (cast_expression "(undefined4 *)(puVar29 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001958b;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001958b" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_0001958b" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) }))) })) }))))) (labeled_statement "LAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;" statement_identifier : (expression_statement "bVar40 = local_238 != (stat64 *)0x4000;" (assignment_expression "bVar40 = local_238 != (stat64 *)0x4000" identifier = (binary_expression "local_238 != (stat64 *)0x4000" identifier != (cast_expression "(stat64 *)0x4000" ( (type_descriptor "stat64 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;)) (if_statement "if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }" if (parenthesized_expression "((byte)local_1f4 == '\0')" ( (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }" { (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" identifier = (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" identifier (argument_list "(local_20c._1_3_,*(byte *)(local_1f0 + 5))" ( (field_expression "local_20c._1_3_" identifier . field_identifier) , (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) )))) ))))) ;) (expression_statement "bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;" (assignment_expression "bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40" identifier = (binary_expression "(*(byte *)(local_1f0 + 5) ^ 1) & bVar40" (parenthesized_expression "(*(byte *)(local_1f0 + 5) ^ 1)" ( (binary_expression "*(byte *)(local_1f0 + 5) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 5)" * (cast_expression "(byte *)(local_1f0 + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 5)" ( (binary_expression "local_1f0 + 5" identifier + number_literal) )))) ^ number_literal) )) & identifier)) ;) (if_statement "if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }" if (parenthesized_expression "(bVar7 != 0)" ( (binary_expression "bVar7 != 0" identifier != number_literal) )) (compound_statement "{\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }" { (expression_statement "bVar2 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar2 = *(byte *)((int)local_1f0 + 0x25)" identifier = (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" * (cast_expression "(byte *)((int)local_1f0 + 0x25)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x25)" ( (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x21) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" * (cast_expression "(char *)((int)local_1f0 + 0x21)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x21)" ( (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(bVar40 = bVar7, bVar2 != 0)" ( (comma_expression "bVar40 = bVar7, bVar2 != 0" (assignment_expression "bVar40 = bVar7" identifier = identifier) , (binary_expression "bVar2 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }" { (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" * (cast_expression "(int **)(puVar29 + -4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)bVar2;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)bVar2" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x177d2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x177d2" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "bVar40 = FUN_00015960();" (assignment_expression "bVar40 = FUN_00015960()" identifier = (call_expression "FUN_00015960()" identifier (argument_list "()" ( )))) ;) (if_statement "if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }" if (parenthesized_expression "(bVar40 == 0)" ( (binary_expression "bVar40 == 0" identifier == number_literal) )) (compound_statement "{\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }" { (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" identifier = (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" identifier (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" ( (field_expression "local_1f4._1_3_" identifier . field_identifier) , (pointer_expression "*(char *)((int)local_1f0 + 0x26)" * (cast_expression "(char *)((int)local_1f0 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x26)" ( (binary_expression "(int)local_1f0 + 0x26" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ))))) ;) (expression_statement "bVar40 = bVar7;" (assignment_expression "bVar40 = bVar7" identifier = identifier) ;) (if_statement "if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x26) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x26) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x26)" * (cast_expression "(char *)((int)local_1f0 + 0x26)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x26)" ( (binary_expression "(int)local_1f0 + 0x26" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00016fad;" goto statement_identifier ;)) })) })) })) })) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" identifier = number_literal) ;) (if_statement "if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }" if (parenthesized_expression "((byte)local_1fc != '\0')" ( (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }" { (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" identifier = (binary_expression "local_24c & 0xffffff00" identifier & number_literal)) ;) (goto_statement "goto LAB_00016722;" goto statement_identifier ;) })) (labeled_statement "LAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;" statement_identifier : (if_statement "if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;" if (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))" ( (binary_expression "((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0)" (parenthesized_expression "((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x17) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" * (cast_expression "(char *)((int)local_1f0 + 0x17)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x17)" ( (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(bVar40 != 0)" ( (binary_expression "bVar40 != 0" identifier != number_literal) ))) )) || (parenthesized_expression "(bVar25 != 0)" ( (binary_expression "bVar25 != 0" identifier != number_literal) ))) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;))) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1f) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1f) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1f)" * (cast_expression "(char *)((int)local_1f0 + 0x1f)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1f)" ( (binary_expression "(int)local_1f0 + 0x1f" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }" { (labeled_statement "LAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;" statement_identifier : (if_statement "if ((char)local_208 == '\0') goto LAB_0001687d;" if (parenthesized_expression "((char)local_208 == '\0')" ( (binary_expression "(char)local_208 == '\0'" (cast_expression "(char)local_208" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001687d;" goto statement_identifier ;))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x27) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" * (cast_expression "(char *)((int)local_1f0 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x27)" ( (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17511;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17511" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00014b00();" (assignment_expression "cVar6 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar6 != '\0') goto LAB_0001614a;" if (parenthesized_expression "(cVar6 != '\0')" ( (binary_expression "cVar6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (expression_statement "cVar6 = (char)local_1f0[10];" (assignment_expression "cVar6 = (char)local_1f0[10]" identifier = (cast_expression "(char)local_1f0[10]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[10]" identifier [ number_literal ]))) ;) }) (else_clause "else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" else (compound_statement "{\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" { (expression_statement "local_30 = local_174;" (assignment_expression "local_30 = local_174" identifier = identifier) ;) (expression_statement "local_2c = local_170;" (assignment_expression "local_2c = local_170" identifier = identifier) ;) (expression_statement "local_28 = local_16c;" (assignment_expression "local_28 = local_16c" identifier = identifier) ;) (expression_statement "local_24 = local_168;" (assignment_expression "local_24 = local_168" identifier = identifier) ;) (if_statement "if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }" if (parenthesized_expression "((char)local_208 != '\0')" ( (binary_expression "(char)local_208 != '\0'" (cast_expression "(char)local_208" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }" { (expression_statement "*(__time_t **)(puVar29 + -0xc) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -0xc) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -0xc)" * (cast_expression "(__time_t **)(puVar29 + -0xc)" ( (type_descriptor "__time_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16805;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16805" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_000225b0();" (assignment_expression "iVar10 = FUN_000225b0()" identifier = (call_expression "FUN_000225b0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x16811;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x16811" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*piVar14 != 0x26) goto LAB_00016816;" if (parenthesized_expression "(*piVar14 != 0x26)" ( (binary_expression "*piVar14 != 0x26" (pointer_expression "*piVar14" * identifier) != number_literal) )) (goto_statement "goto LAB_00016816;" goto statement_identifier ;)) })) (goto_statement "goto LAB_00016870;" goto statement_identifier ;) })) (expression_statement "*(__time_t **)(puVar29 + -0xc) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -0xc) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -0xc)" * (cast_expression "(__time_t **)(puVar29 + -0xc)" ( (type_descriptor "__time_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18652;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18652" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00022580();" (assignment_expression "iVar10 = FUN_00022580()" identifier = (call_expression "FUN_00022580()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }" { (labeled_statement "LAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;" statement_identifier : (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16826;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16826" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb03f" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1683b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1683b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1fc = dcgettext();" (assignment_expression "local_1fc = dcgettext()" identifier = (call_expression "dcgettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16846;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16846" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar9 = local_1fc;" (assignment_expression "uVar9 = local_1fc" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar29 + -0x18) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x18) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x18)" * (cast_expression "(uint *)(puVar29 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00016857;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00016857" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_00016857" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (labeled_statement "LAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" statement_identifier : (if_statement "if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid))))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1d) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" * (cast_expression "(char *)((int)local_1f0 + 0x1d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1d)" ( (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))" ( (parenthesized_expression "(((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid))" ( (binary_expression "((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)" (parenthesized_expression "((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid))" ( (binary_expression "(byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)" (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(local_1b4._24_4_ != local_154.st_uid)" ( (binary_expression "local_1b4._24_4_ != local_154.st_uid" (field_expression "local_1b4._24_4_" identifier . field_identifier) != (field_expression "local_154.st_uid" identifier . field_identifier)) ))) )) || (parenthesized_expression "(local_1b4._28_4_ != local_154.st_gid)" ( (binary_expression "local_1b4._28_4_ != local_154.st_gid" (field_expression "local_1b4._28_4_" identifier . field_identifier) != (field_expression "local_154.st_gid" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" { (expression_statement "*(stat64 **)(puVar29 + -8) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_154" & identifier)) ;) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" * (cast_expression "(undefined1 **)(puVar29 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x168d3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x168d3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_00015b60();" (assignment_expression "iVar10 = FUN_00015b60()" identifier = (call_expression "FUN_00015b60()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == -1) goto LAB_00016148;" if (parenthesized_expression "(iVar10 == -1)" ( (binary_expression "iVar10 == -1" identifier == number_literal) )) (goto_statement "goto LAB_00016148;" goto statement_identifier ;)) (if_statement "if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n              local_204 = local_204 & 0xfffff1ff;\n            }" { (expression_statement "local_204 = local_204 & 0xfffff1ff;" (assignment_expression "local_204 = local_204 & 0xfffff1ff" identifier = (binary_expression "local_204 & 0xfffff1ff" identifier & number_literal)) ;) })) }))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) != '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x27) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" * (cast_expression "(char *)((int)local_1f0 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x27)" ( (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }" { (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" * (cast_expression "(int **)(puVar29 + -0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18c76;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18c76" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar6 = FUN_00014b00();" (assignment_expression "cVar6 = FUN_00014b00()" identifier = (call_expression "FUN_00014b00()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;" if (parenthesized_expression "((cVar6 == '\0') && ((char)local_1f0[10] != '\0'))" ( (binary_expression "(cVar6 == '\0') && ((char)local_1f0[10] != '\0')" (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[10] != '\0')" ( (binary_expression "(char)local_1f0[10] != '\0'" (cast_expression "(char)local_1f0[10]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[10]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_00016148;" goto statement_identifier ;)) })) (if_statement "if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }" if (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))" ( (binary_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x1e) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1e)" * (cast_expression "(char *)((int)local_1f0 + 0x1e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x1e)" ( (binary_expression "(int)local_1f0 + 0x1e" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((char)local_1f0[6] == '\0')" ( (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[6]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }" { (if_statement "if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" if (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) == '\0')" ( (binary_expression "*(char *)((int)local_1f0 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" * (cast_expression "(char *)((int)local_1f0 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1f0 + 0x2b)" ( (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }" { (if_statement "if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }" if (parenthesized_expression "((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0)" ( (binary_expression "(*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0" (parenthesized_expression "(*(byte *)(local_1f0 + 8) & (byte)local_1f4)" ( (binary_expression "*(byte *)(local_1f0 + 8) & (byte)local_1f4" (pointer_expression "*(byte *)(local_1f0 + 8)" * (cast_expression "(byte *)(local_1f0 + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_1f0 + 8)" ( (binary_expression "local_1f0 + 8" identifier + number_literal) )))) & (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier)) )) == number_literal) )) (compound_statement "{\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }" { (if_statement "if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" if (parenthesized_expression "(local_23c == 0)" ( (binary_expression "local_23c == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }" { (labeled_statement "LAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;" statement_identifier : (if_statement "if ((byte)local_224 == '\0') goto LAB_0001614a;" if (parenthesized_expression "((byte)local_224 == '\0')" ( (binary_expression "(byte)local_224 == '\0'" (cast_expression "(byte)local_224" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;))) }) (else_clause "else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" else (compound_statement "{\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" { (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x191ba;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x191ba" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar22 = FUN_00015d90();" (assignment_expression "uVar22 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_23c = local_23c & ~uVar22;" (assignment_expression "local_23c = local_23c & ~uVar22" identifier = (binary_expression "local_23c & ~uVar22" identifier & (unary_expression "~uVar22" ~ identifier))) ;) (if_statement "if (local_23c == 0) goto LAB_0001694e;" if (parenthesized_expression "(local_23c == 0)" ( (binary_expression "local_23c == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001694e;" goto statement_identifier ;)) (if_statement "if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }" if (parenthesized_expression "((byte)local_224 != '\x01')" ( (binary_expression "(byte)local_224 != '\x01'" (cast_expression "(byte)local_224" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }" { (if_statement "if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }" if (parenthesized_expression "((byte)local_1f4 != '\0')" ( (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" ( (type_descriptor "byte" type_identifier) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }" { (expression_statement "*(uint *)(puVar29 + -4) = ~uVar22;" (assignment_expression "*(uint *)(puVar29 + -4) = ~uVar22" (pointer_expression "*(uint *)(puVar29 + -4)" * (cast_expression "(uint *)(puVar29 + -4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = (unary_expression "~uVar22" ~ identifier)) ;) (expression_statement "*(stat64 **)(puVar29 + -8) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (pointer_expression "&local_154" & identifier)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19977;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19977" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" identifier = (call_expression "__lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" identifier (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" ( (pointer_expression "*(int *)(puVar29 + -0x10)" * (cast_expression "(int *)(puVar29 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(stat64 **)(puVar29 + -8)" * (cast_expression "(stat64 **)(puVar29 + -8)" ( (type_descriptor "stat64 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar30 = puVar29 + -0xc;" (assignment_expression "puVar30 = puVar29 + -0xc" identifier = (binary_expression "puVar29 + -0xc" identifier + number_literal)) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_0001620e;" goto statement_identifier ;) })) })) (expression_statement "local_270 = local_154.st_mode;" (assignment_expression "local_270 = local_154.st_mode" identifier = (field_expression "local_154.st_mode" identifier . field_identifier)) ;) (if_statement "if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;" if (parenthesized_expression "((local_23c & ~local_154.st_mode) == 0)" ( (binary_expression "(local_23c & ~local_154.st_mode) == 0" (parenthesized_expression "(local_23c & ~local_154.st_mode)" ( (binary_expression "local_23c & ~local_154.st_mode" identifier & (unary_expression "~local_154.st_mode" ~ (field_expression "local_154.st_mode" identifier . field_identifier))) )) == number_literal) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) })) }))) (expression_statement "*(uint *)(puVar29 + -0xc) = local_270 | local_23c;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_270 | local_23c" (pointer_expression "*(uint *)(puVar29 + -0xc)" * (cast_expression "(uint *)(puVar29 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "local_270 | local_23c" identifier | identifier)) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16976;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16976" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier = (call_expression "chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" identifier (argument_list "(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" ( (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(__mode_t *)(puVar29 + -0xc)" * (cast_expression "(__mode_t *)(puVar29 + -0xc)" ( (type_descriptor "__mode_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }" { (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" * (cast_expression "(int *)(puVar29 + -4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" * (cast_expression "(char **)(puVar29 + -0xc)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16990;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16990" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" identifier = (call_expression "FUN_00020540()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" * (cast_expression "(undefined4 *)(puVar29 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027" (pointer_expression "*(int *)(puVar29 + -0xc)" * (cast_expression "(int *)(puVar29 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = (binary_expression "(int)ppuVar28 + -0xb027" (cast_expression "(int)ppuVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" * (cast_expression "(undefined4 *)(puVar29 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x169a5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x169a5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1f4 = (char *)dcgettext();" (assignment_expression "local_1f4 = (char *)dcgettext()" identifier = (cast_expression "(char *)dcgettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x169b0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x169b0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar20 = local_1f4;" (assignment_expression "pcVar20 = local_1f4" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar29 + -0x18) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x18) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x18)" * (cast_expression "(char **)(puVar29 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" * (cast_expression "(int *)(puVar29 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" * (cast_expression "(undefined4 *)(puVar29 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000169c1;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000169c1" (pointer_expression "*(undefined **)(puVar29 + -0x24)" * (cast_expression "(undefined **)(puVar29 + -0x24)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = (pointer_expression "&UNK_000169c1" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;) })) (expression_statement "uVar22 = 0x1b6;" (assignment_expression "uVar22 = 0x1b6" identifier = number_literal) ;) (if_statement "if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }" if (parenthesized_expression "((local_204 & 0x7000) == 0x4000)" ( (binary_expression "(local_204 & 0x7000) == 0x4000" (parenthesized_expression "(local_204 & 0x7000)" ( (binary_expression "local_204 & 0x7000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                uVar22 = 0x1ff;\n              }" { (expression_statement "uVar22 = 0x1ff;" (assignment_expression "uVar22 = 0x1ff" identifier = number_literal) ;) })) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x191a8;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x191a8" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar21 = FUN_00015d90();" (assignment_expression "uVar21 = FUN_00015d90()" identifier = (call_expression "FUN_00015d90()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(uint *)(puVar29 + -8) = ~uVar21 & uVar22;" (assignment_expression "*(uint *)(puVar29 + -8) = ~uVar21 & uVar22" (pointer_expression "*(uint *)(puVar29 + -8)" * (cast_expression "(uint *)(puVar29 + -8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (binary_expression "~uVar21 & uVar22" (unary_expression "~uVar21" ~ identifier) & identifier)) ;) }) (else_clause "else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" else (compound_statement "{\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" { (expression_statement "*(int *)(puVar29 + -8) = local_1f0[4];" (assignment_expression "*(int *)(puVar29 + -8) = local_1f0[4]" (pointer_expression "*(int *)(puVar29 + -8)" * (cast_expression "(int *)(puVar29 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -8)" ( (binary_expression "puVar29 + -8" identifier + number_literal) )))) = (subscript_expression "local_1f0[4]" identifier [ number_literal ])) ;) }))) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" * (cast_expression "(undefined4 *)(puVar29 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0xc)" ( (binary_expression "puVar29 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" * (cast_expression "(char **)(puVar29 + -0x10)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18ece;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18ece" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" identifier = (call_expression "FUN_0001b7d0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) goto LAB_0001614a;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (goto_statement "goto LAB_00016148;" goto statement_identifier ;) })) (expression_statement "*(uint *)(puVar29 + -0x10) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x10) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x10)" * (cast_expression "(uint *)(puVar29 + -0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x10)" ( (binary_expression "puVar29 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" * (cast_expression "(undefined4 *)(puVar29 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x14)" ( (binary_expression "puVar29 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x18) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x18) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x18)" * (cast_expression "(char **)(puVar29 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x18)" ( (binary_expression "puVar29 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" * (cast_expression "(undefined4 *)(puVar29 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x1c)" ( (binary_expression "puVar29 + -0x1c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" * (cast_expression "(char **)(puVar29 + -0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + -0x20)" ( (binary_expression "puVar29 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x183b6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x183b6" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" * (cast_expression "(undefined4 *)(puVar29 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -0x24)" ( (binary_expression "puVar29 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = FUN_0001b720();" (assignment_expression "iVar10 = FUN_0001b720()" identifier = (call_expression "FUN_0001b720()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == 0) goto LAB_0001614a;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) (expression_statement "cVar6 = (char)local_1f0[9];" (assignment_expression "cVar6 = (char)local_1f0[9]" identifier = (cast_expression "(char)local_1f0[9]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_1f0[9]" identifier [ number_literal ]))) ;) }))) (if_statement "if (cVar6 == '\0') goto LAB_0001614a;" if (parenthesized_expression "(cVar6 == '\0')" ( (binary_expression "cVar6 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0001614a;" goto statement_identifier ;)) })) }))) }))) (labeled_statement "LAB_00016148:\n  uVar9 = 0;" statement_identifier : (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;)) (labeled_statement "LAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }" statement_identifier : (if_statement "if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }" if (parenthesized_expression "(local_20 == *(int *)(in_GS_OFFSET + 0x14))" ( (binary_expression "local_20 == *(int *)(in_GS_OFFSET + 0x14)" identifier == (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) )) (compound_statement "{\n    return uVar9;\n  }" { (return_statement "return uVar9;" return identifier ;) }))) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19855;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19855" (pointer_expression "*(undefined4 *)(puVar29 + -4)" * (cast_expression "(undefined4 *)(puVar29 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + -4)" ( (binary_expression "puVar29 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0002bcb0();" (call_expression "FUN_0002bcb0()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (binary_expression IDENT == LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT == LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) )))) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * IDENT) == LIT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (binary_expression IDENT != (char_literal ' escape_sequence '))) ))) )) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) & IDENT) )))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence '))) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence '))) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) , (binary_expression (pointer_expression * IDENT) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) ))) << LIT)) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT)) )) | (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , IDENT , (pointer_expression & IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , IDENT ))) ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT == (field_expression (field_expression IDENT . field_identifier) . field_identifier)) && (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)))) )) && (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) == (field_expression (field_expression IDENT . field_identifier) . field_identifier)) && (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) == IDENT) && (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) == IDENT)) )) && (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) && (binary_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) == (field_expression IDENT . field_identifier))) )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) ))))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) ))) )) (goto_statement goto statement_identifier ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) ))) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) != LIT) ))) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) == LIT) ))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & (field_expression IDENT -> field_identifier))) + LIT) )))) != (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & (field_expression IDENT -> field_identifier))) + LIT) ))))) || (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)) != (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)))) )) || (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & (field_expression IDENT -> field_identifier))) + LIT) )))) != (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & (field_expression IDENT -> field_identifier))) + LIT) ))))) || (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)) != (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)))) ))) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) }))) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( IDENT )) && (parenthesized_expression ( (binary_expression LIT < (field_expression IDENT -> field_identifier)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) ))) )) && (parenthesized_expression ( (binary_expression LIT < (field_expression IDENT -> field_identifier)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (goto_statement goto statement_identifier ;) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) , (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)) & LIT) )) != LIT)) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & (field_expression IDENT -> field_identifier))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier)) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT -> field_identifier))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) == IDENT) && (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) == IDENT)) )) && (parenthesized_expression ( (binary_expression (binary_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) == (field_expression IDENT . field_identifier)) && (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)))) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) != LIT) ))))) ;) })) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) || (parenthesized_expression ( (unary_expression ! IDENT) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;))) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == (char_literal ' escape_sequence ')))) ))) )) ))) )) (goto_statement goto statement_identifier ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) ))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) )) + LIT) ]) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' character ')) )) + LIT) ]) == (char_literal ' character ')) ))) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , IDENT )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & (field_expression IDENT -> field_identifier))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (pointer_expression & IDENT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (binary_expression IDENT == (field_expression (field_expression IDENT . field_identifier) . field_identifier)) && (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)))) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) == (field_expression (field_expression IDENT . field_identifier) . field_identifier)) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT ))) ;)) })) })) }))) (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 = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , IDENT ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) & LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) || IDENT) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) || (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) < LIT) ))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) ))) )) ))) )) ))) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (binary_expression (pointer_expression * IDENT) != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) == (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 *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (binary_expression IDENT != (char_literal ' escape_sequence '))) ))) )) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) , (binary_expression IDENT != (char_literal ' escape_sequence '))) ))) )) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , 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 = (call_expression IDENT (argument_list ( )))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != (char_literal ' escape_sequence ')))) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (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 *))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (goto_statement goto statement_identifier ;)) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT != LIT) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (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 *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) })))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) , (binary_expression (subscript_expression IDENT [ LIT ]) == LIT)) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( ))))) ;) (goto_statement goto statement_identifier ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (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) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT & LIT) ))) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (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 *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) == IDENT) && (binary_expression (subscript_expression IDENT [ LIT ]) == IDENT)) )) && (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) == (subscript_expression IDENT [ LIT ])) && (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])))) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + LIT) ))) & LIT) )))) ;) (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = IDENT) ;) (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & (field_expression IDENT -> field_identifier)))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & (field_expression IDENT -> field_identifier))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (field_expression IDENT . field_identifier)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence '))) ))) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (unary_expression ~ IDENT) & (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (field_expression IDENT . field_identifier) | LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (cast_expression ( (type_descriptor TYPE) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression (field_expression IDENT . field_identifier) . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression (field_expression IDENT . field_identifier) . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) & (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) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) == (field_expression IDENT . field_identifier)) && (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (for_statement for ( (assignment_expression IDENT = LIT) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & (field_expression IDENT -> field_identifier)))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT )))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & IDENT) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) | (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) | (subscript_expression IDENT [ LIT ])) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (field_expression IDENT . field_identifier)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (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 = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT)) && (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) != (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (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) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (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) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT != (field_expression (field_expression IDENT . field_identifier) . field_identifier)) || (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)))) || (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) != (field_expression (field_expression IDENT . field_identifier) . field_identifier)) ))) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier)) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) ))) << LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (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) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != IDENT) || (binary_expression IDENT != IDENT)) )) || (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) != (field_expression IDENT . field_identifier)) || (binary_expression (field_expression IDENT . field_identifier) != (field_expression IDENT . field_identifier))) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (unary_expression ~ IDENT) & IDENT) )))) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) & (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) & (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , 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 IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) ))) < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , (field_expression IDENT . field_identifier) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (parenthesized_expression ( (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (field_expression IDENT . field_identifier) + IDENT) ))) >> LIT) | (binary_expression IDENT * LIT)) ))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) != (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) < LIT))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT - LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) && (parenthesized_expression ( IDENT ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ))) - (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ))) % IDENT))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ))) - (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ))) % IDENT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < (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 *)) ) (parenthesized_expression ( (binary_expression LIT - IDENT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression LIT - IDENT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) < IDENT) ))))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (unary_expression - (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) % (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ))) - (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (parenthesized_expression ( (binary_expression IDENT - LIT) ))) ))) % IDENT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (break_statement break ;) })) (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 *)) ) 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) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) ))) )))) )) != (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )))) ))) < LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) , (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) )))) )) != (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) )))) ))) < LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) - IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) )))) )) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) < IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (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) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (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 = IDENT) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == IDENT) && (binary_expression (binary_expression IDENT + IDENT) == IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & (field_expression IDENT -> field_identifier))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) , (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))) )))) )) == (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) )))) ))) < LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( IDENT ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) })) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (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 (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) != (field_expression IDENT . field_identifier)) || (parenthesized_expression ( (comma_expression (assignment_expression (field_expression IDENT . field_identifier) = (field_expression IDENT . field_identifier)) , (binary_expression (field_expression IDENT . field_identifier) != (field_expression IDENT . field_identifier))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) , (binary_expression IDENT == LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & (unary_expression ~ IDENT)) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (unary_expression ~ (cast_expression ( (type_descriptor TYPE) ) IDENT)) & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 = LIT) ;) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) }))) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (unary_expression ~ IDENT) - LIT) ]) != (char_literal ' character ')) )) + 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 *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (call_expression IDENT (argument_list ( (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) })) (goto_statement goto statement_identifier ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression 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 (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) << LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (unary_expression ~ IDENT) & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) || (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )) (compound_statement { (expression_statement (assignment_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (unary_expression ~ IDENT) & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) ))) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) & LIT) )) != LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (unary_expression ~ IDENT) - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression (field_expression IDENT . field_identifier) . field_identifier) != LIT) )) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)) != IDENT) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }))) })) }))))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT) )) & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) })) })) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (goto_statement goto statement_identifier ;))) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) }) (else_clause else (compound_statement { (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (goto_statement goto statement_identifier ;)) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) || (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) != (field_expression IDENT . field_identifier)) ))) )) || (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) != (field_expression IDENT . field_identifier)) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) ))) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & (unary_expression ~ IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (unary_expression ~ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & (unary_expression ~ (field_expression IDENT . field_identifier))) )) == LIT) )) (goto_statement goto statement_identifier ;)) })) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT | IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (unary_expression ~ IDENT) & IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) }))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })))
(function_definition "uint __regparm3\nFUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)\n\n{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    \n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}" (type_identifier "uint") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00015de0(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)" (identifier "FUN_00015de0") (parameter_list "(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,\n            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)" (( "(") (parameter_declaration "char *param_1" (primitive_type "char") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "char *param_2" (primitive_type "char") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined1 param_3" (type_identifier "undefined1") (identifier "param_3")) (, ",") (parameter_declaration "__ino_t *param_4" (type_identifier "__ino_t") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) (, ",") (parameter_declaration "int *param_5" (primitive_type "int") (pointer_declarator "*param_5" (* "*") (identifier "param_5"))) (, ",") (parameter_declaration "int *param_6" (primitive_type "int") (pointer_declarator "*param_6" (* "*") (identifier "param_6"))) (, ",") (parameter_declaration "uint param_7" (type_identifier "uint") (identifier "param_7")) (, ",") (parameter_declaration "code *param_8" (type_identifier "code") (pointer_declarator "*param_8" (* "*") (identifier "param_8"))) (, ",") (parameter_declaration "byte *param_9" (type_identifier "byte") (pointer_declarator "*param_9" (* "*") (identifier "param_9"))) (, ",") (parameter_declaration "undefined1 *param_10" (type_identifier "undefined1") (pointer_declarator "*param_10" (* "*") (identifier "param_10"))) () ")"))) (compound_statement "{\n  code cVar1;\n  byte bVar2;\n  bool bVar3;\n  bool bVar4;\n  __mode_t _Var5;\n  char cVar6;\n  byte bVar7;\n  int iVar8;\n  uint uVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  byte *pbVar13;\n  int *piVar14;\n  undefined4 uVar15;\n  size_t sVar16;\n  byte **ppbVar17;\n  char *pcVar18;\n  code *pcVar19;\n  char *pcVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  code *pcVar24;\n  undefined4 extraout_ECX;\n  undefined4 extraout_ECX_00;\n  undefined4 extraout_ECX_01;\n  undefined4 extraout_ECX_02;\n  undefined4 extraout_ECX_03;\n  undefined4 extraout_ECX_04;\n  undefined4 extraout_ECX_05;\n  undefined4 extraout_ECX_06;\n  undefined4 extraout_ECX_07;\n  undefined4 extraout_ECX_08;\n  undefined4 extraout_ECX_09;\n  undefined4 extraout_ECX_10;\n  undefined4 extraout_ECX_11;\n  undefined4 extraout_ECX_12;\n  undefined4 extraout_ECX_13;\n  undefined4 extraout_ECX_14;\n  byte bVar25;\n  stat64 *psVar26;\n  undefined4 extraout_EDX;\n  undefined4 extraout_EDX_00;\n  int iVar27;\n  undefined **ppuVar28;\n  undefined1 *puVar29;\n  undefined1 *puVar30;\n  undefined1 *puVar31;\n  undefined1 *puVar32;\n  undefined1 *puVar33;\n  undefined1 *puVar34;\n  byte *pbVar35;\n  byte *pbVar36;\n  undefined4 *puVar37;\n  int in_GS_OFFSET;\n  undefined1 uVar38;\n  undefined1 uVar39;\n  byte bVar40;\n  __off64_t _Var41;\n  undefined8 uVar42;\n  undefined1 auStack_28c [7];\n  char local_285;\n  uint local_284;\n  undefined **local_280;\n  int local_27c;\n  uint local_278;\n  int local_274;\n  uint local_270;\n  code *local_26c;\n  int local_268;\n  uint local_264;\n  int local_260;\n  code *local_25c;\n  code *local_258;\n  code *local_254;\n  int local_250;\n  uint local_24c;\n  int local_248;\n  uint local_244;\n  stat64 *local_240;\n  uint local_23c;\n  stat64 *local_238;\n  stat64 *local_234;\n  char *local_230;\n  __ino_t *local_22c;\n  int *local_228;\n  __ino_t local_224;\n  code *local_220;\n  code *local_21c;\n  int local_218;\n  byte **local_214;\n  __ino_t local_210;\n  byte *local_20c;\n  undefined1 *local_208;\n  uint local_204;\n  char *local_200;\n  uint local_1fc;\n  char *local_1f8;\n  char *local_1f4;\n  int *local_1f0;\n  undefined1 local_1dd;\n  uint local_1dc;\n  int local_1d8;\n  __ino_t local_1d4;\n  undefined4 local_1d0;\n  stat64 *local_1c4;\n  char local_1c0;\n  char local_1bf;\n  int local_1bc;\n  undefined1 local_1b4 [36];\n  __ino_t local_190;\n  undefined4 local_188;\n  __time_t local_174;\n  long local_170;\n  __time_t local_16c;\n  long local_168;\n  int local_15c;\n  uint local_158;\n  stat64 local_154;\n  undefined1 local_f4 [48];\n  int local_c4;\n  int local_c0;\n  uint local_bc;\n  int local_b8;\n  int local_9c;\n  uint local_98;\n  stat64 local_94;\n  __time_t local_30;\n  long local_2c;\n  __time_t local_28;\n  long local_24;\n  int local_20;\n  undefined4 uStack_14;\n  \n  bVar40 = 0;\n  uStack_14 = 0x15deb;\n  ppuVar28 = &__DT_PLTGOT;\n  local_200 = param_1;\n  local_1f8 = param_2;\n  local_22c = param_4;\n  local_220 = (code *)param_9;\n  local_21c = param_8;\n  local_228 = param_5;\n  local_208 = param_10;\n  local_1f0 = param_6;\n  local_1fc = param_7;\n  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);\n  local_224 = CONCAT31(local_224._1_3_,(char)param_7);\n  local_20 = *(int *)(in_GS_OFFSET + 0x14);\n  *param_9 = 0;\n  iVar10 = param_6[0xd];\n  if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }\nLAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;\n  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }\nLAB_00015ef0:\n  puVar32 = auStack_28c;\n  puVar29 = auStack_28c;\n  puVar34 = auStack_28c;\n  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }\n  local_20c = (byte *)0x1;\n  if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }\n  if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }\n  local_214 = (byte **)((uint)local_214._1_3_ << 8);\n  local_230 = (char *)0x0;\nLAB_00016259:\n  puVar32 = puVar34;\n  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }\nLAB_00016148:\n  uVar9 = 0;\nLAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }\n                    \n  *(undefined4 *)(puVar29 + -4) = 0x19855;\n  FUN_0002bcb0();\n}" ({ "{") (declaration "code cVar1;" (type_identifier "code") (identifier "cVar1") (; ";")) (declaration "byte bVar2;" (type_identifier "byte") (identifier "bVar2") (; ";")) (declaration "bool bVar3;" (primitive_type "bool") (identifier "bVar3") (; ";")) (declaration "bool bVar4;" (primitive_type "bool") (identifier "bVar4") (; ";")) (declaration "__mode_t _Var5;" (type_identifier "__mode_t") (identifier "_Var5") (; ";")) (declaration "char cVar6;" (primitive_type "char") (identifier "cVar6") (; ";")) (declaration "byte bVar7;" (type_identifier "byte") (identifier "bVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined4 uVar11;" (type_identifier "undefined4") (identifier "uVar11") (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "byte *pbVar13;" (type_identifier "byte") (pointer_declarator "*pbVar13" (* "*") (identifier "pbVar13")) (; ";")) (declaration "int *piVar14;" (primitive_type "int") (pointer_declarator "*piVar14" (* "*") (identifier "piVar14")) (; ";")) (declaration "undefined4 uVar15;" (type_identifier "undefined4") (identifier "uVar15") (; ";")) (declaration "size_t sVar16;" (primitive_type "size_t") (identifier "sVar16") (; ";")) (declaration "byte **ppbVar17;" (type_identifier "byte") (pointer_declarator "**ppbVar17" (* "*") (pointer_declarator "*ppbVar17" (* "*") (identifier "ppbVar17"))) (; ";")) (declaration "char *pcVar18;" (primitive_type "char") (pointer_declarator "*pcVar18" (* "*") (identifier "pcVar18")) (; ";")) (declaration "code *pcVar19;" (type_identifier "code") (pointer_declarator "*pcVar19" (* "*") (identifier "pcVar19")) (; ";")) (declaration "char *pcVar20;" (primitive_type "char") (pointer_declarator "*pcVar20" (* "*") (identifier "pcVar20")) (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "int *piVar23;" (primitive_type "int") (pointer_declarator "*piVar23" (* "*") (identifier "piVar23")) (; ";")) (declaration "code *pcVar24;" (type_identifier "code") (pointer_declarator "*pcVar24" (* "*") (identifier "pcVar24")) (; ";")) (declaration "undefined4 extraout_ECX;" (type_identifier "undefined4") (identifier "extraout_ECX") (; ";")) (declaration "undefined4 extraout_ECX_00;" (type_identifier "undefined4") (identifier "extraout_ECX_00") (; ";")) (declaration "undefined4 extraout_ECX_01;" (type_identifier "undefined4") (identifier "extraout_ECX_01") (; ";")) (declaration "undefined4 extraout_ECX_02;" (type_identifier "undefined4") (identifier "extraout_ECX_02") (; ";")) (declaration "undefined4 extraout_ECX_03;" (type_identifier "undefined4") (identifier "extraout_ECX_03") (; ";")) (declaration "undefined4 extraout_ECX_04;" (type_identifier "undefined4") (identifier "extraout_ECX_04") (; ";")) (declaration "undefined4 extraout_ECX_05;" (type_identifier "undefined4") (identifier "extraout_ECX_05") (; ";")) (declaration "undefined4 extraout_ECX_06;" (type_identifier "undefined4") (identifier "extraout_ECX_06") (; ";")) (declaration "undefined4 extraout_ECX_07;" (type_identifier "undefined4") (identifier "extraout_ECX_07") (; ";")) (declaration "undefined4 extraout_ECX_08;" (type_identifier "undefined4") (identifier "extraout_ECX_08") (; ";")) (declaration "undefined4 extraout_ECX_09;" (type_identifier "undefined4") (identifier "extraout_ECX_09") (; ";")) (declaration "undefined4 extraout_ECX_10;" (type_identifier "undefined4") (identifier "extraout_ECX_10") (; ";")) (declaration "undefined4 extraout_ECX_11;" (type_identifier "undefined4") (identifier "extraout_ECX_11") (; ";")) (declaration "undefined4 extraout_ECX_12;" (type_identifier "undefined4") (identifier "extraout_ECX_12") (; ";")) (declaration "undefined4 extraout_ECX_13;" (type_identifier "undefined4") (identifier "extraout_ECX_13") (; ";")) (declaration "undefined4 extraout_ECX_14;" (type_identifier "undefined4") (identifier "extraout_ECX_14") (; ";")) (declaration "byte bVar25;" (type_identifier "byte") (identifier "bVar25") (; ";")) (declaration "stat64 *psVar26;" (type_identifier "stat64") (pointer_declarator "*psVar26" (* "*") (identifier "psVar26")) (; ";")) (declaration "undefined4 extraout_EDX;" (type_identifier "undefined4") (identifier "extraout_EDX") (; ";")) (declaration "undefined4 extraout_EDX_00;" (type_identifier "undefined4") (identifier "extraout_EDX_00") (; ";")) (declaration "int iVar27;" (primitive_type "int") (identifier "iVar27") (; ";")) (declaration "undefined **ppuVar28;" (type_identifier "undefined") (pointer_declarator "**ppuVar28" (* "*") (pointer_declarator "*ppuVar28" (* "*") (identifier "ppuVar28"))) (; ";")) (declaration "undefined1 *puVar29;" (type_identifier "undefined1") (pointer_declarator "*puVar29" (* "*") (identifier "puVar29")) (; ";")) (declaration "undefined1 *puVar30;" (type_identifier "undefined1") (pointer_declarator "*puVar30" (* "*") (identifier "puVar30")) (; ";")) (declaration "undefined1 *puVar31;" (type_identifier "undefined1") (pointer_declarator "*puVar31" (* "*") (identifier "puVar31")) (; ";")) (declaration "undefined1 *puVar32;" (type_identifier "undefined1") (pointer_declarator "*puVar32" (* "*") (identifier "puVar32")) (; ";")) (declaration "undefined1 *puVar33;" (type_identifier "undefined1") (pointer_declarator "*puVar33" (* "*") (identifier "puVar33")) (; ";")) (declaration "undefined1 *puVar34;" (type_identifier "undefined1") (pointer_declarator "*puVar34" (* "*") (identifier "puVar34")) (; ";")) (declaration "byte *pbVar35;" (type_identifier "byte") (pointer_declarator "*pbVar35" (* "*") (identifier "pbVar35")) (; ";")) (declaration "byte *pbVar36;" (type_identifier "byte") (pointer_declarator "*pbVar36" (* "*") (identifier "pbVar36")) (; ";")) (declaration "undefined4 *puVar37;" (type_identifier "undefined4") (pointer_declarator "*puVar37" (* "*") (identifier "puVar37")) (; ";")) (declaration "int in_GS_OFFSET;" (primitive_type "int") (identifier "in_GS_OFFSET") (; ";")) (declaration "undefined1 uVar38;" (type_identifier "undefined1") (identifier "uVar38") (; ";")) (declaration "undefined1 uVar39;" (type_identifier "undefined1") (identifier "uVar39") (; ";")) (declaration "byte bVar40;" (type_identifier "byte") (identifier "bVar40") (; ";")) (declaration "__off64_t _Var41;" (type_identifier "__off64_t") (identifier "_Var41") (; ";")) (declaration "undefined8 uVar42;" (type_identifier "undefined8") (identifier "uVar42") (; ";")) (declaration "undefined1 auStack_28c [7];" (type_identifier "undefined1") (array_declarator "auStack_28c [7]" (identifier "auStack_28c") ([ "[") (number_literal "7") (] "]")) (; ";")) (declaration "char local_285;" (primitive_type "char") (identifier "local_285") (; ";")) (declaration "uint local_284;" (type_identifier "uint") (identifier "local_284") (; ";")) (declaration "undefined **local_280;" (type_identifier "undefined") (pointer_declarator "**local_280" (* "*") (pointer_declarator "*local_280" (* "*") (identifier "local_280"))) (; ";")) (declaration "int local_27c;" (primitive_type "int") (identifier "local_27c") (; ";")) (declaration "uint local_278;" (type_identifier "uint") (identifier "local_278") (; ";")) (declaration "int local_274;" (primitive_type "int") (identifier "local_274") (; ";")) (declaration "uint local_270;" (type_identifier "uint") (identifier "local_270") (; ";")) (declaration "code *local_26c;" (type_identifier "code") (pointer_declarator "*local_26c" (* "*") (identifier "local_26c")) (; ";")) (declaration "int local_268;" (primitive_type "int") (identifier "local_268") (; ";")) (declaration "uint local_264;" (type_identifier "uint") (identifier "local_264") (; ";")) (declaration "int local_260;" (primitive_type "int") (identifier "local_260") (; ";")) (declaration "code *local_25c;" (type_identifier "code") (pointer_declarator "*local_25c" (* "*") (identifier "local_25c")) (; ";")) (declaration "code *local_258;" (type_identifier "code") (pointer_declarator "*local_258" (* "*") (identifier "local_258")) (; ";")) (declaration "code *local_254;" (type_identifier "code") (pointer_declarator "*local_254" (* "*") (identifier "local_254")) (; ";")) (declaration "int local_250;" (primitive_type "int") (identifier "local_250") (; ";")) (declaration "uint local_24c;" (type_identifier "uint") (identifier "local_24c") (; ";")) (declaration "int local_248;" (primitive_type "int") (identifier "local_248") (; ";")) (declaration "uint local_244;" (type_identifier "uint") (identifier "local_244") (; ";")) (declaration "stat64 *local_240;" (type_identifier "stat64") (pointer_declarator "*local_240" (* "*") (identifier "local_240")) (; ";")) (declaration "uint local_23c;" (type_identifier "uint") (identifier "local_23c") (; ";")) (declaration "stat64 *local_238;" (type_identifier "stat64") (pointer_declarator "*local_238" (* "*") (identifier "local_238")) (; ";")) (declaration "stat64 *local_234;" (type_identifier "stat64") (pointer_declarator "*local_234" (* "*") (identifier "local_234")) (; ";")) (declaration "char *local_230;" (primitive_type "char") (pointer_declarator "*local_230" (* "*") (identifier "local_230")) (; ";")) (declaration "__ino_t *local_22c;" (type_identifier "__ino_t") (pointer_declarator "*local_22c" (* "*") (identifier "local_22c")) (; ";")) (declaration "int *local_228;" (primitive_type "int") (pointer_declarator "*local_228" (* "*") (identifier "local_228")) (; ";")) (declaration "__ino_t local_224;" (type_identifier "__ino_t") (identifier "local_224") (; ";")) (declaration "code *local_220;" (type_identifier "code") (pointer_declarator "*local_220" (* "*") (identifier "local_220")) (; ";")) (declaration "code *local_21c;" (type_identifier "code") (pointer_declarator "*local_21c" (* "*") (identifier "local_21c")) (; ";")) (declaration "int local_218;" (primitive_type "int") (identifier "local_218") (; ";")) (declaration "byte **local_214;" (type_identifier "byte") (pointer_declarator "**local_214" (* "*") (pointer_declarator "*local_214" (* "*") (identifier "local_214"))) (; ";")) (declaration "__ino_t local_210;" (type_identifier "__ino_t") (identifier "local_210") (; ";")) (declaration "byte *local_20c;" (type_identifier "byte") (pointer_declarator "*local_20c" (* "*") (identifier "local_20c")) (; ";")) (declaration "undefined1 *local_208;" (type_identifier "undefined1") (pointer_declarator "*local_208" (* "*") (identifier "local_208")) (; ";")) (declaration "uint local_204;" (type_identifier "uint") (identifier "local_204") (; ";")) (declaration "char *local_200;" (primitive_type "char") (pointer_declarator "*local_200" (* "*") (identifier "local_200")) (; ";")) (declaration "uint local_1fc;" (type_identifier "uint") (identifier "local_1fc") (; ";")) (declaration "char *local_1f8;" (primitive_type "char") (pointer_declarator "*local_1f8" (* "*") (identifier "local_1f8")) (; ";")) (declaration "char *local_1f4;" (primitive_type "char") (pointer_declarator "*local_1f4" (* "*") (identifier "local_1f4")) (; ";")) (declaration "int *local_1f0;" (primitive_type "int") (pointer_declarator "*local_1f0" (* "*") (identifier "local_1f0")) (; ";")) (declaration "undefined1 local_1dd;" (type_identifier "undefined1") (identifier "local_1dd") (; ";")) (declaration "uint local_1dc;" (type_identifier "uint") (identifier "local_1dc") (; ";")) (declaration "int local_1d8;" (primitive_type "int") (identifier "local_1d8") (; ";")) (declaration "__ino_t local_1d4;" (type_identifier "__ino_t") (identifier "local_1d4") (; ";")) (declaration "undefined4 local_1d0;" (type_identifier "undefined4") (identifier "local_1d0") (; ";")) (declaration "stat64 *local_1c4;" (type_identifier "stat64") (pointer_declarator "*local_1c4" (* "*") (identifier "local_1c4")) (; ";")) (declaration "char local_1c0;" (primitive_type "char") (identifier "local_1c0") (; ";")) (declaration "char local_1bf;" (primitive_type "char") (identifier "local_1bf") (; ";")) (declaration "int local_1bc;" (primitive_type "int") (identifier "local_1bc") (; ";")) (declaration "undefined1 local_1b4 [36];" (type_identifier "undefined1") (array_declarator "local_1b4 [36]" (identifier "local_1b4") ([ "[") (number_literal "36") (] "]")) (; ";")) (declaration "__ino_t local_190;" (type_identifier "__ino_t") (identifier "local_190") (; ";")) (declaration "undefined4 local_188;" (type_identifier "undefined4") (identifier "local_188") (; ";")) (declaration "__time_t local_174;" (type_identifier "__time_t") (identifier "local_174") (; ";")) (declaration "long local_170;" (sized_type_specifier "long" (long "long")) (identifier "local_170") (; ";")) (declaration "__time_t local_16c;" (type_identifier "__time_t") (identifier "local_16c") (; ";")) (declaration "long local_168;" (sized_type_specifier "long" (long "long")) (identifier "local_168") (; ";")) (declaration "int local_15c;" (primitive_type "int") (identifier "local_15c") (; ";")) (declaration "uint local_158;" (type_identifier "uint") (identifier "local_158") (; ";")) (declaration "stat64 local_154;" (type_identifier "stat64") (identifier "local_154") (; ";")) (declaration "undefined1 local_f4 [48];" (type_identifier "undefined1") (array_declarator "local_f4 [48]" (identifier "local_f4") ([ "[") (number_literal "48") (] "]")) (; ";")) (declaration "int local_c4;" (primitive_type "int") (identifier "local_c4") (; ";")) (declaration "int local_c0;" (primitive_type "int") (identifier "local_c0") (; ";")) (declaration "uint local_bc;" (type_identifier "uint") (identifier "local_bc") (; ";")) (declaration "int local_b8;" (primitive_type "int") (identifier "local_b8") (; ";")) (declaration "int local_9c;" (primitive_type "int") (identifier "local_9c") (; ";")) (declaration "uint local_98;" (type_identifier "uint") (identifier "local_98") (; ";")) (declaration "stat64 local_94;" (type_identifier "stat64") (identifier "local_94") (; ";")) (declaration "__time_t local_30;" (type_identifier "__time_t") (identifier "local_30") (; ";")) (declaration "long local_2c;" (sized_type_specifier "long" (long "long")) (identifier "local_2c") (; ";")) (declaration "__time_t local_28;" (type_identifier "__time_t") (identifier "local_28") (; ";")) (declaration "long local_24;" (sized_type_specifier "long" (long "long")) (identifier "local_24") (; ";")) (declaration "int local_20;" (primitive_type "int") (identifier "local_20") (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "bVar40 = 0;" (assignment_expression "bVar40 = 0" (identifier "bVar40") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_14 = 0x15deb;" (assignment_expression "uStack_14 = 0x15deb" (identifier "uStack_14") (= "=") (number_literal "0x15deb")) (; ";")) (expression_statement "ppuVar28 = &__DT_PLTGOT;" (assignment_expression "ppuVar28 = &__DT_PLTGOT" (identifier "ppuVar28") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (expression_statement "local_200 = param_1;" (assignment_expression "local_200 = param_1" (identifier "local_200") (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_1f8 = param_2;" (assignment_expression "local_1f8 = param_2" (identifier "local_1f8") (= "=") (identifier "param_2")) (; ";")) (expression_statement "local_22c = param_4;" (assignment_expression "local_22c = param_4" (identifier "local_22c") (= "=") (identifier "param_4")) (; ";")) (expression_statement "local_220 = (code *)param_9;" (assignment_expression "local_220 = (code *)param_9" (identifier "local_220") (= "=") (cast_expression "(code *)param_9" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_9"))) (; ";")) (expression_statement "local_21c = param_8;" (assignment_expression "local_21c = param_8" (identifier "local_21c") (= "=") (identifier "param_8")) (; ";")) (expression_statement "local_228 = param_5;" (assignment_expression "local_228 = param_5" (identifier "local_228") (= "=") (identifier "param_5")) (; ";")) (expression_statement "local_208 = param_10;" (assignment_expression "local_208 = param_10" (identifier "local_208") (= "=") (identifier "param_10")) (; ";")) (expression_statement "local_1f0 = param_6;" (assignment_expression "local_1f0 = param_6" (identifier "local_1f0") (= "=") (identifier "param_6")) (; ";")) (expression_statement "local_1fc = param_7;" (assignment_expression "local_1fc = param_7" (identifier "local_1fc") (= "=") (identifier "param_7")) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,param_3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,param_3)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,param_3)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "param_3") () ")"))))) (; ";")) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(char)param_7);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(char)param_7)" (identifier "local_224") (= "=") (call_expression "CONCAT31(local_224._1_3_,(char)param_7)" (identifier "CONCAT31") (argument_list "(local_224._1_3_,(char)param_7)" (( "(") (field_expression "local_224._1_3_" (identifier "local_224") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)param_7" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "param_7")) () ")")))) (; ";")) (expression_statement "local_20 = *(int *)(in_GS_OFFSET + 0x14);" (assignment_expression "local_20 = *(int *)(in_GS_OFFSET + 0x14)" (identifier "local_20") (= "=") (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" (* "*") (cast_expression "(int *)(in_GS_OFFSET + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_GS_OFFSET + 0x14)" (( "(") (binary_expression "in_GS_OFFSET + 0x14" (identifier "in_GS_OFFSET") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "*param_9 = 0;" (assignment_expression "*param_9 = 0" (pointer_expression "*param_9" (* "*") (identifier "param_9")) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar10 = param_6[0xd];" (assignment_expression "iVar10 = param_6[0xd]" (identifier "iVar10") (= "=") (subscript_expression "param_6[0xd]" (identifier "param_6") ([ "[") (number_literal "0xd") (] "]"))) (; ";")) (if_statement "if ((char)param_6[6] != '\0') {\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }" (if "if") (parenthesized_expression "((char)param_6[6] != '\0')" (( "(") (binary_expression "(char)param_6[6] != '\0'" (cast_expression "(char)param_6[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "param_6[6]" (identifier "param_6") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }\n    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);\n    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);\n    if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\nLAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }\n    iVar10 = 0;\n    iVar8 = local_1f0[1];\n    pcVar20 = local_1f8;\njoined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }\n    puVar30 = &stack0xfffffd68;\nLAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;\n    *(undefined4 *)(puVar30 + -8) = 0x16215;\n    uVar11 = FUN_00020540();\n    puVar31 = puVar30 + 4;\n    *(undefined4 *)(puVar30 + 4) = 5;\n    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);\nLAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;\n    *(undefined4 *)(puVar31 + -8) = 0;\n    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;\n    uVar12 = dcgettext();\n    *(undefined4 *)(puVar31 + -0xc) = 0x16231;\n    piVar14 = __errno_location();\n    *(undefined4 *)(puVar31 + -0xc) = uVar11;\n    *(undefined4 *)(puVar31 + -0x10) = uVar12;\n    *(int *)(puVar31 + -0x14) = *piVar14;\n    *(undefined4 *)(puVar31 + -0x18) = 0;\n                    \n    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;\n    error();\n  }" ({ "{") (if_statement "if (-1 < iVar10) {\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }" (if "if") (parenthesized_expression "(-1 < iVar10)" (( "(") (binary_expression "-1 < iVar10" (number_literal "-1") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\nLAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }\n      goto LAB_00015e8b;\n    }" ({ "{") (labeled_statement "LAB_00015e6f:\n      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);" (statement_identifier "LAB_00015e6f") (: ":") (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,iVar10 == 0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,iVar10 == 0)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,iVar10 == 0)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")"))))) (; ";"))) (if_statement "if (local_208 != (undefined1 *)0x0) {\n        *local_208 = iVar10 == 0;\n      }" (if "if") (parenthesized_expression "(local_208 != (undefined1 *)0x0)" (( "(") (binary_expression "local_208 != (undefined1 *)0x0" (identifier "local_208") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        *local_208 = iVar10 == 0;\n      }" ({ "{") (expression_statement "*local_208 = iVar10 == 0;" (assignment_expression "*local_208 = iVar10 == 0" (pointer_expression "*local_208" (* "*") (identifier "local_208")) (= "=") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00015e8b;" (goto "goto") (statement_identifier "LAB_00015e8b") (; ";")) (} "}"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6])" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(char)param_6[6])" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,(char)param_6[6])" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,(char)param_6[6])" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)param_6[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "param_6[6]" (identifier "param_6") ([ "[") (number_literal "6") (] "]"))) () ")"))))) (; ";")) (expression_statement "iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);" (assignment_expression "iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c)" (identifier "iVar10") (= "=") (call_expression "FUN_000209f0(0xffffff9c,param_1,0xffffff9c)" (identifier "FUN_000209f0") (argument_list "(0xffffff9c,param_1,0xffffff9c)" (( "(") (number_literal "0xffffff9c") (, ",") (identifier "param_1") (, ",") (number_literal "0xffffff9c") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      piVar14 = __errno_location();\n      iVar10 = *piVar14;\n      goto LAB_00015e6f;\n    }" ({ "{") (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = *piVar14;" (assignment_expression "iVar10 = *piVar14" (identifier "iVar10") (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (goto_statement "goto LAB_00015e6f;" (goto "goto") (statement_identifier "LAB_00015e6f") (; ";")) (} "}"))) (if_statement "if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }" (if "if") (parenthesized_expression "(local_208 != (undefined1 *)0x0)" (( "(") (binary_expression "local_208 != (undefined1 *)0x0" (identifier "local_208") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *local_208 = 1;\n    }" ({ "{") (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" (* "*") (identifier "local_208")) (= "=") (number_literal "1")) (; ";")) (} "}"))) (labeled_statement "LAB_000161c0:\n    if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" (statement_identifier "LAB_000161c0") (: ":") (if_statement "if (*(char *)((int)local_1f0 + 0x31) != '\0') {\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x31) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x31) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x31)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x31)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x31)" (( "(") (binary_expression "(int)local_1f0 + 0x31" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x31")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      iVar10 = 0;\n      goto LAB_00015ef0;\n    }" ({ "{") (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00015ef0;" (goto "goto") (statement_identifier "LAB_00015ef0") (; ";")) (} "}")))) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar8 = local_1f0[1];" (assignment_expression "iVar8 = local_1f0[1]" (identifier "iVar8") (= "=") (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pcVar20 = local_1f8;" (assignment_expression "pcVar20 = local_1f8" (identifier "pcVar20") (= "=") (identifier "local_1f8")) (; ";")) (labeled_statement "joined_r0x00015eac:\n    if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" (statement_identifier "joined_r0x00015eac") (: ":") (if_statement "if (iVar8 == 2) {\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }\n    else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" (if "if") (parenthesized_expression "(iVar8 == 2)" (( "(") (binary_expression "iVar8 == 2" (identifier "iVar8") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" ({ "{") (expression_statement "iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);" (assignment_expression "iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4)" (identifier "iVar8") (= "=") (call_expression "__lxstat64(3,pcVar20,(stat64 *)local_1b4)" (identifier "__lxstat64") (argument_list "(3,pcVar20,(stat64 *)local_1b4)" (( "(") (number_literal "3") (, ",") (identifier "pcVar20") (, ",") (cast_expression "(stat64 *)local_1b4" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_1b4")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" (else "else") (compound_statement "{\n      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);\n    }" ({ "{") (expression_statement "iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);" (assignment_expression "iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4)" (identifier "iVar8") (= "=") (call_expression "__xstat64(3,pcVar20,(stat64 *)local_1b4)" (identifier "__xstat64") (argument_list "(3,pcVar20,(stat64 *)local_1b4)" (( "(") (number_literal "3") (, ",") (identifier "pcVar20") (, ",") (cast_expression "(stat64 *)local_1b4" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_1b4")) () ")")))) (; ";")) (} "}"))))) (if_statement "if (iVar8 == 0) {\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      local_204 = local_1b4._16_4_;\n      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }\n      goto LAB_00015ef0;\n    }" ({ "{") (expression_statement "local_204 = local_1b4._16_4_;" (assignment_expression "local_204 = local_1b4._16_4_" (identifier "local_204") (= "=") (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_"))) (; ";")) (if_statement "if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }" (if "if") (parenthesized_expression "(((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0'))" (( "(") (binary_expression "((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')" (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" (( "(") (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (&& "&&") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2a) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2a) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2a)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2a)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2a)" (( "(") (binary_expression "(int)local_1f0 + 0x2a" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2a")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n        FUN_00020540();\n        if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }\n                    \n        error();\n      }" ({ "{") (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x19) == '\0') {\n          dcgettext();\n        }\n        else {\n          dcgettext();\n        }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x19) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x19) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x19)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x19)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x19)" (( "(") (binary_expression "(int)local_1f0 + 0x19" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x19")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          dcgettext();\n        }" ({ "{") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          dcgettext();\n        }" (else "else") (compound_statement "{\n          dcgettext();\n        }" ({ "{") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00015ef0;" (goto "goto") (statement_identifier "LAB_00015ef0") (; ";")) (} "}"))) (expression_statement "puVar30 = &stack0xfffffd68;" (assignment_expression "puVar30 = &stack0xfffffd68" (identifier "puVar30") (= "=") (pointer_expression "&stack0xfffffd68" (& "&") (identifier "stack0xfffffd68"))) (; ";")) (labeled_statement "LAB_0001620e:\n    *(undefined4 *)(puVar30 + -4) = 4;" (statement_identifier "LAB_0001620e") (: ":") (expression_statement "*(undefined4 *)(puVar30 + -4) = 4;" (assignment_expression "*(undefined4 *)(puVar30 + -4) = 4" (pointer_expression "*(undefined4 *)(puVar30 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar30 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + -4)" (( "(") (binary_expression "puVar30 + -4" (identifier "puVar30") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "4")) (; ";"))) (expression_statement "*(undefined4 *)(puVar30 + -8) = 0x16215;" (assignment_expression "*(undefined4 *)(puVar30 + -8) = 0x16215" (pointer_expression "*(undefined4 *)(puVar30 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar30 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + -8)" (( "(") (binary_expression "puVar30 + -8" (identifier "puVar30") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0x16215")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar31 = puVar30 + 4;" (assignment_expression "puVar31 = puVar30 + 4" (identifier "puVar31") (= "=") (binary_expression "puVar30 + 4" (identifier "puVar30") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar30 + 4) = 5;" (assignment_expression "*(undefined4 *)(puVar30 + 4) = 5" (pointer_expression "*(undefined4 *)(puVar30 + 4)" (* "*") (cast_expression "(undefined4 *)(puVar30 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar30 + 4)" (( "(") (binary_expression "puVar30 + 4" (identifier "puVar30") (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193)" (identifier "ppuVar28") (= "=") (cast_expression "(undefined **)((int)ppuVar28 + -0xb193)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)ppuVar28 + -0xb193)" (( "(") (binary_expression "(int)ppuVar28 + -0xb193" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb193")) () ")")))) (; ";")) (labeled_statement "LAB_00016222:\n    *(undefined ***)(puVar31 + -4) = ppuVar28;" (statement_identifier "LAB_00016222") (: ":") (expression_statement "*(undefined ***)(puVar31 + -4) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar31 + -4) = ppuVar28" (pointer_expression "*(undefined ***)(puVar31 + -4)" (* "*") (cast_expression "(undefined ***)(puVar31 + -4)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar31 + -4)" (( "(") (binary_expression "puVar31 + -4" (identifier "puVar31") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "ppuVar28")) (; ";"))) (expression_statement "*(undefined4 *)(puVar31 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar31 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar31 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar31 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -8)" (( "(") (binary_expression "puVar31 + -8" (identifier "puVar31") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = 0x1622a;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = 0x1622a" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar31 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -0xc)" (( "(") (binary_expression "puVar31 + -0xc" (identifier "puVar31") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x1622a")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = 0x16231;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = 0x16231" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar31 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -0xc)" (( "(") (binary_expression "puVar31 + -0xc" (identifier "puVar31") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x16231")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar31 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar31 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar31 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar31 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -0xc)" (( "(") (binary_expression "puVar31 + -0xc" (identifier "puVar31") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar31 + -0x10) = uVar12;" (assignment_expression "*(undefined4 *)(puVar31 + -0x10) = uVar12" (pointer_expression "*(undefined4 *)(puVar31 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar31 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -0x10)" (( "(") (binary_expression "puVar31 + -0x10" (identifier "puVar31") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar31 + -0x14) = *piVar14;" (assignment_expression "*(int *)(puVar31 + -0x14) = *piVar14" (pointer_expression "*(int *)(puVar31 + -0x14)" (* "*") (cast_expression "(int *)(puVar31 + -0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -0x14)" (( "(") (binary_expression "puVar31 + -0x14" (identifier "puVar31") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar31 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar31 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar31 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar31 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar31 + -0x18)" (( "(") (binary_expression "puVar31 + -0x18" (identifier "puVar31") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;" (assignment_expression "*(undefined **)(puVar31 + -0x1c) = &UNK_0001623c" (pointer_expression "*(undefined **)(puVar31 + -0x1c)" (* "*") (cast_expression "(undefined **)(puVar31 + -0x1c)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar31 + -0x1c)" (( "(") (binary_expression "puVar31 + -0x1c" (identifier "puVar31") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "&UNK_0001623c" (& "&") (identifier "UNK_0001623c"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_00015e8b:\n  if (iVar10 == 0) goto LAB_000161c0;" (statement_identifier "LAB_00015e8b") (: ":") (if_statement "if (iVar10 == 0) goto LAB_000161c0;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000161c0;" (goto "goto") (statement_identifier "LAB_000161c0") (; ";")))) (if_statement "if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }" (if "if") (parenthesized_expression "((iVar10 != 0x11) || (local_1f0[2] != 2))" (( "(") (binary_expression "(iVar10 != 0x11) || (local_1f0[2] != 2)" (parenthesized_expression "(iVar10 != 0x11)" (( "(") (binary_expression "iVar10 != 0x11" (identifier "iVar10") (!= "!=") (number_literal "0x11")) () ")")) (|| "||") (parenthesized_expression "(local_1f0[2] != 2)" (( "(") (binary_expression "local_1f0[2] != 2" (subscript_expression "local_1f0[2]" (identifier "local_1f0") ([ "[") (number_literal "2") (] "]")) (!= "!=") (number_literal "2")) () ")"))) () ")")) (compound_statement "{\n    iVar8 = local_1f0[1];\n    pcVar20 = local_200;\n    goto joined_r0x00015eac;\n  }" ({ "{") (expression_statement "iVar8 = local_1f0[1];" (assignment_expression "iVar8 = local_1f0[1]" (identifier "iVar8") (= "=") (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "pcVar20 = local_200;" (assignment_expression "pcVar20 = local_200" (identifier "pcVar20") (= "=") (identifier "local_200")) (; ";")) (goto_statement "goto joined_r0x00015eac;" (goto "goto") (statement_identifier "joined_r0x00015eac") (; ";")) (} "}"))) (labeled_statement "LAB_00015ef0:\n  puVar32 = auStack_28c;" (statement_identifier "LAB_00015ef0") (: ":") (expression_statement "puVar32 = auStack_28c;" (assignment_expression "puVar32 = auStack_28c" (identifier "puVar32") (= "=") (identifier "auStack_28c")) (; ";"))) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" (identifier "puVar29") (= "=") (identifier "auStack_28c")) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (if_statement "if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }" (if "if") (parenthesized_expression "(((byte)local_1fc != '\0') && (local_1f0[0x10] != 0))" (( "(") (binary_expression "((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)" (parenthesized_expression "((byte)local_1fc != '\0')" (( "(") (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(local_1f0[0x10] != 0)" (( "(") (binary_expression "local_1f0[0x10] != 0" (subscript_expression "local_1f0[0x10]" (identifier "local_1f0") ([ "[") (number_literal "0x10") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    local_20c = local_1b4;\n    if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }\n    FUN_0001d1d0();\n  }" ({ "{") (expression_statement "local_20c = local_1b4;" (assignment_expression "local_20c = local_1b4" (identifier "local_20c") (= "=") (identifier "local_1b4")) (; ";")) (if_statement "if (((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }" (if "if") (parenthesized_expression "(((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0'))))" (( "(") (binary_expression "((local_204 & 0xf000) != 0x4000) &&\n       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))" (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" (( "(") (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0x4000")) () ")")) (&& "&&") (parenthesized_expression "((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))" (( "(") (parenthesized_expression "(*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0'))" (( "(") (binary_expression "*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')" (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (== "==") (number_literal "0")) (&& "&&") (parenthesized_expression "(cVar6 = FUN_0001d250(), cVar6 != '\0')" (( "(") (comma_expression "cVar6 = FUN_0001d250(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_0001d250()" (identifier "cVar6") (= "=") (call_expression "FUN_0001d250()" (identifier "FUN_0001d250") (argument_list "()" (( "(") () ")")))) (, ",") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n      FUN_00020540();\n      uVar11 = dcgettext();\n                    \n      error(0,0,uVar11);\n    }" ({ "{") (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" (identifier "error") (argument_list "(0,0,uVar11)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" (identifier "FUN_0001d1d0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "local_20c = (byte *)0x1;" (assignment_expression "local_20c = (byte *)0x1" (identifier "local_20c") (= "=") (cast_expression "(byte *)0x1" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (if_statement "if (local_1f0[1] != 4) {\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }" (if "if") (parenthesized_expression "(local_1f0[1] != 4)" (( "(") (binary_expression "local_1f0[1] != 4" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\n    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);\n  }" ({ "{") (expression_statement "local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);" (assignment_expression "local_20c = (byte *)(local_1f0[1] == 3 & local_1fc)" (identifier "local_20c") (= "=") (cast_expression "(byte *)(local_1f0[1] == 3 & local_1fc)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0[1] == 3 & local_1fc)" (( "(") (binary_expression "local_1f0[1] == 3 & local_1fc" (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "3")) (& "&") (identifier "local_1fc")) () ")")))) (; ";")) (} "}"))) (if_statement "if ((byte)local_1f4 == '\0') {\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }" (if "if") (parenthesized_expression "((byte)local_1f4 == '\0')" (( "(") (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }\n    local_230 = (char *)((uint)local_230 & 0xffffff00);\n    local_214 = (byte **)((uint)local_214._1_3_ << 8);\nLAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }\n    if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }\n    iVar10 = FUN_00021ee0();\n    if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }\n    if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }\n    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);\n    puVar34 = auStack_28c;\n    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;\n    puVar29 = auStack_28c;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }\n    goto LAB_00016148;\n  }" ({ "{") (if_statement "if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }" (if "if") (parenthesized_expression "((iVar10 != 0x11) || (local_1f0[2] != 2))" (( "(") (binary_expression "(iVar10 != 0x11) || (local_1f0[2] != 2)" (parenthesized_expression "(iVar10 != 0x11)" (( "(") (binary_expression "iVar10 != 0x11" (identifier "iVar10") (!= "!=") (number_literal "0x11")) () ")")) (|| "||") (parenthesized_expression "(local_1f0[2] != 2)" (( "(") (binary_expression "local_1f0[2] != 2" (subscript_expression "local_1f0[2]" (identifier "local_1f0") ([ "[") (number_literal "2") (] "]")) (!= "!=") (number_literal "2")) () ")"))) () ")")) (compound_statement "{\n      uVar9 = local_204 & 0xf000;\n      if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }\n      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);\n      if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }\n      if (local_1f0[2] == 2) goto LAB_00016048;\n      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }\n      if (local_1f0[1] != 2) goto LAB_00016048;\n      bVar3 = false;\n      bVar4 = false;\nLAB_000175fc:\n      local_234 = &local_154;\n      psVar26 = (stat64 *)local_1b4;\n      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }\n      cVar6 = FUN_00020ea0();\n      if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }\nLAB_00017680:\n      FUN_000203c0();\n      FUN_000203c0();\nLAB_000176b3:\n      uVar11 = dcgettext();\n      goto LAB_000176c0;\n    }" ({ "{") (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" (identifier "uVar9") (= "=") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000"))) (; ";")) (if_statement "if (uVar9 == 0x8000) {\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }\n      else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" (if "if") (parenthesized_expression "(uVar9 == 0x8000)" (( "(") (binary_expression "uVar9 == 0x8000" (identifier "uVar9") (== "==") (number_literal "0x8000")) () ")")) (compound_statement "{\nLAB_00016b80:\n        iVar8 = 0x100;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);\n        if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }\n      }" ({ "{") (labeled_statement "LAB_00016b80:\n        iVar8 = 0x100;" (statement_identifier "LAB_00016b80") (: ":") (expression_statement "iVar8 = 0x100;" (assignment_expression "iVar8 = 0x100" (identifier "iVar8") (= "=") (number_literal "0x100")) (; ";"))) (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6])" (identifier "local_214") (= "=") (cast_expression "(byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6])" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "CONCAT31(local_214._1_3_,(char)local_1f0[6])" (identifier "CONCAT31") (argument_list "(local_214._1_3_,(char)local_1f0[6])" (( "(") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) () ")"))))) (; ";")) (if_statement "if (((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }" (if "if") (parenthesized_expression "(((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0))" (( "(") (binary_expression "((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')) &&\n           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)" (parenthesized_expression "((((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0'))" (( "(") (binary_expression "(((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')) &&\n            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')" (parenthesized_expression "(((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0'))" (( "(") (binary_expression "((char)local_1f0[6] == '\0') &&\n             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')" (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0')" (( "(") (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),\n             (char)local_1f0[0xb] == '\0'" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" (identifier "local_214") (= "=") (cast_expression "(byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "CONCAT31(local_214._1_3_,(char)local_1f0[0xb])" (identifier "CONCAT31") (argument_list "(local_214._1_3_,(char)local_1f0[0xb])" (( "(") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)local_1f0[0xb]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[0xb]" (identifier "local_1f0") ([ "[") (number_literal "0xb") (] "]"))) () ")"))))) (, ",") (binary_expression "(char)local_1f0[0xb] == '\0'" (cast_expression "(char)local_1f0[0xb]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[0xb]" (identifier "local_1f0") ([ "[") (number_literal "0xb") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0')" (( "(") (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),\n            *(char *)((int)local_1f0 + 0x17) == '\0'" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" (identifier "local_214") (= "=") (cast_expression "(byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" (identifier "CONCAT31") (argument_list "(local_214._1_3_,*(char *)((int)local_1f0 + 0x17))" (( "(") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) () ")"))))) (, ",") (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)" (( "(") (comma_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,1)" (identifier "local_214") (= "=") (cast_expression "(byte **)CONCAT31(local_214._1_3_,1)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "CONCAT31(local_214._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_214._1_3_,1)" (( "(") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (, ",") (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));\n          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;\n        }" ({ "{") (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" (identifier "local_214") (= "=") (cast_expression "(byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" (identifier "CONCAT31") (argument_list "(local_214._1_3_,*(char *)((int)local_1f0 + 0x15))" (( "(") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)((int)local_1f0 + 0x15)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x15)" (( "(") (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x15")) () ")")))) () ")"))))) (; ";")) (expression_statement "iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;" (assignment_expression "iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8" (identifier "iVar8") (= "=") (binary_expression "(uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8" (call_expression "(uint)(*(char *)((int)local_1f0 + 0x15) != '\0')" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(char *)((int)local_1f0 + 0x15) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x15) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x15)" (( "(") (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x15")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) (<< "<<") (number_literal "8"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" (else "else") (compound_statement "{\n        iVar8 = 0x100;\n        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;\n        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);\n        if (bVar25 == 0) goto LAB_00016b80;\n      }" ({ "{") (expression_statement "iVar8 = 0x100;" (assignment_expression "iVar8 = 0x100" (identifier "iVar8") (= "=") (number_literal "0x100")) (; ";")) (expression_statement "bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;" (assignment_expression "bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1" (identifier "bVar25") (= "=") (binary_expression "(uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1" (parenthesized_expression "(uVar9 == 0xa000 || uVar9 == 0x4000)" (( "(") (binary_expression "uVar9 == 0xa000 || uVar9 == 0x4000" (binary_expression "uVar9 == 0xa000" (identifier "uVar9") (== "==") (number_literal "0xa000")) (|| "||") (binary_expression "uVar9 == 0x4000" (identifier "uVar9") (== "==") (number_literal "0x4000"))) () ")")) (| "|") (binary_expression "*(byte *)(local_1f0 + 5) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 5)" (* "*") (cast_expression "(byte *)(local_1f0 + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 5)" (( "(") (binary_expression "local_1f0 + 5" (identifier "local_1f0") (+ "+") (number_literal "5")) () ")")))) (^ "^") (number_literal "1")))) (; ";")) (expression_statement "local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);" (assignment_expression "local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25)" (identifier "local_214") (= "=") (cast_expression "(byte **)CONCAT31(local_214._1_3_,bVar25)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "CONCAT31(local_214._1_3_,bVar25)" (identifier "CONCAT31") (argument_list "(local_214._1_3_,bVar25)" (( "(") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar25") () ")"))))) (; ";")) (if_statement "if (bVar25 == 0) goto LAB_00016b80;" (if "if") (parenthesized_expression "(bVar25 == 0)" (( "(") (binary_expression "bVar25 == 0" (identifier "bVar25") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00016b80;" (goto "goto") (statement_identifier "LAB_00016b80") (; ";"))) (} "}")))) (expression_statement "iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);" (assignment_expression "iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8)" (identifier "iVar8") (= "=") (call_expression "__fxstatat64(3,-100,local_1f8,&local_154,iVar8)" (identifier "__fxstatat64") (argument_list "(3,-100,local_1f8,&local_154,iVar8)" (( "(") (number_literal "3") (, ",") (number_literal "-100") (, ",") (identifier "local_1f8") (, ",") (pointer_expression "&local_154" (& "&") (identifier "local_154")) (, ",") (identifier "iVar8") () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }\n      else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        local_230 = (char *)((uint)local_230 & 0xffffff00);\n      }" ({ "{") (expression_statement "local_230 = (char *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (char *)((uint)local_230 & 0xffffff00)" (identifier "local_230") (= "=") (cast_expression "(char *)((uint)local_230 & 0xffffff00)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_230 & 0xffffff00)" (( "(") (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_230")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" (else "else") (compound_statement "{\n        piVar14 = __errno_location();\n        if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }\n        local_214 = (byte **)((uint)local_214 & 0xffffff00);\n        if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n      }" ({ "{") (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*piVar14 == 0x28) {\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }\n        else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }" (if "if") (parenthesized_expression "(*piVar14 == 0x28)" (( "(") (binary_expression "*piVar14 == 0x28" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (== "==") (number_literal "0x28")) () ")")) (compound_statement "{\n          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;\n          local_230 = (char *)((uint)local_230._1_3_ << 8);\n        }" ({ "{") (if_statement "if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x16) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x16) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x16)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x16)" (( "(") (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x16")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00017070;" (goto "goto") (statement_identifier "LAB_00017070") (; ";"))) (expression_statement "local_230 = (char *)((uint)local_230._1_3_ << 8);" (assignment_expression "local_230 = (char *)((uint)local_230._1_3_ << 8)" (identifier "local_230") (= "=") (cast_expression "(char *)((uint)local_230._1_3_ << 8)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_230._1_3_ << 8)" (( "(") (binary_expression "(uint)local_230._1_3_ << 8" (cast_expression "(uint)local_230._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_230._1_3_" (identifier "local_230") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }" (else "else") (compound_statement "{\n          local_230 = (char *)CONCAT31(local_230._1_3_,1);\n          if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }\n        }" ({ "{") (expression_statement "local_230 = (char *)CONCAT31(local_230._1_3_,1);" (assignment_expression "local_230 = (char *)CONCAT31(local_230._1_3_,1)" (identifier "local_230") (= "=") (cast_expression "(char *)CONCAT31(local_230._1_3_,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_230._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_230._1_3_,1)" (( "(") (field_expression "local_230._1_3_" (identifier "local_230") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (*piVar14 != 2) {\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }" (if "if") (parenthesized_expression "(*piVar14 != 2)" (( "(") (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\nLAB_00017070:\n            local_1f0 = piVar14;\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,*local_1f0,uVar11);\n          }" ({ "{") (labeled_statement "LAB_00017070:\n            local_1f0 = piVar14;" (statement_identifier "LAB_00017070") (: ":") (expression_statement "local_1f0 = piVar14;" (assignment_expression "local_1f0 = piVar14" (identifier "local_1f0") (= "=") (identifier "piVar14")) (; ";"))) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*local_1f0,uVar11);" (call_expression "error(0,*local_1f0,uVar11)" (identifier "error") (argument_list "(0,*local_1f0,uVar11)" (( "(") (number_literal "0") (, ",") (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "local_214 = (byte **)((uint)local_214 & 0xffffff00);" (assignment_expression "local_214 = (byte **)((uint)local_214 & 0xffffff00)" (identifier "local_214") (= "=") (cast_expression "(byte **)((uint)local_214 & 0xffffff00)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((uint)local_214 & 0xffffff00)" (( "(") (binary_expression "(uint)local_214 & 0xffffff00" (cast_expression "(uint)local_214" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_214")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (if_statement "if (iVar10 != 0x11) {\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" (if "if") (parenthesized_expression "(iVar10 != 0x11)" (( "(") (binary_expression "iVar10 != 0x11" (identifier "iVar10") (!= "!=") (number_literal "0x11")) () ")")) (compound_statement "{\n          uVar38 = local_230._0_1_;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" ({ "{") (expression_statement "uVar38 = local_230._0_1_;" (assignment_expression "uVar38 = local_230._0_1_" (identifier "uVar38") (= "=") (field_expression "local_230._0_1_" (identifier "local_230") (. ".") (field_identifier "_0_1_"))) (; ";")) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" (identifier "local_230") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar38)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,uVar38)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,uVar38)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "uVar38") () ")"))))) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (goto_statement "goto LAB_00016259;" (goto "goto") (statement_identifier "LAB_00016259") (; ";")) (} "}"))) (} "}")))) (if_statement "if (local_1f0[2] == 2) goto LAB_00016048;" (if "if") (parenthesized_expression "(local_1f0[2] == 2)" (( "(") (binary_expression "local_1f0[2] == 2" (subscript_expression "local_1f0[2]" (identifier "local_1f0") ([ "[") (number_literal "2") (] "]")) (== "==") (number_literal "2")) () ")")) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";"))) (if_statement "if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }" (if "if") (parenthesized_expression "((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev))" (( "(") (binary_expression "(local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&\n         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)" (parenthesized_expression "(local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino)" (( "(") (binary_expression "local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino" (binary_expression "local_158 == local_154.st_ino._4_4_" (identifier "local_158") (== "==") (field_expression "local_154.st_ino._4_4_" (field_expression "local_154.st_ino" (identifier "local_154") (. ".") (field_identifier "st_ino")) (. ".") (field_identifier "_4_4_"))) (&& "&&") (binary_expression "local_15c == (int)local_154.st_ino" (identifier "local_15c") (== "==") (cast_expression "(int)local_154.st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_154.st_ino" (identifier "local_154") (. ".") (field_identifier "st_ino"))))) () ")")) (&& "&&") (parenthesized_expression "(local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)" (( "(") (binary_expression "local_1b4._4_4_ == local_154.st_dev._4_4_ &&\n          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev" (binary_expression "local_1b4._4_4_ == local_154.st_dev._4_4_" (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_")) (== "==") (field_expression "local_154.st_dev._4_4_" (field_expression "local_154.st_dev" (identifier "local_154") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_"))) (&& "&&") (binary_expression "(byte *)local_1b4._0_4_ == (byte *)local_154.st_dev" (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (== "==") (cast_expression "(byte *)local_154.st_dev" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_154.st_dev" (identifier "local_154") (. ".") (field_identifier "st_dev"))))) () ")"))) () ")")) (compound_statement "{\n        cVar6 = *(char *)((int)local_1f0 + 0x17);\n        if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }\nLAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);\n        goto LAB_00016048;\n      }" ({ "{") (expression_statement "cVar6 = *(char *)((int)local_1f0 + 0x17);" (assignment_expression "cVar6 = *(char *)((int)local_1f0 + 0x17)" (identifier "cVar6") (= "=") (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")"))))) (; ";")) (if_statement "if (cVar6 == '\0') {\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }\n          local_234 = (stat64 *)local_f4;\n          iVar10 = __lxstat64(3,local_1f8,local_234);\n          if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }\nLAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n          goto LAB_00016048;\n        }" ({ "{") (if_statement "if (local_1f0[1] == 2) {\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }" (if "if") (parenthesized_expression "(local_1f0[1] == 2)" (( "(") (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "2")) () ")")) (compound_statement "{\n            bVar3 = true;\n            bVar4 = true;\n            goto LAB_000175fc;\n          }" ({ "{") (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" (identifier "bVar3") (= "=") (true "true")) (; ";")) (expression_statement "bVar4 = true;" (assignment_expression "bVar4 = true" (identifier "bVar4") (= "=") (true "true")) (; ";")) (goto_statement "goto LAB_000175fc;" (goto "goto") (statement_identifier "LAB_000175fc") (; ";")) (} "}"))) (expression_statement "local_234 = (stat64 *)local_f4;" (assignment_expression "local_234 = (stat64 *)local_f4" (identifier "local_234") (= "=") (cast_expression "(stat64 *)local_f4" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_f4"))) (; ";")) (expression_statement "iVar10 = __lxstat64(3,local_1f8,local_234);" (assignment_expression "iVar10 = __lxstat64(3,local_1f8,local_234)" (identifier "iVar10") (= "=") (call_expression "__lxstat64(3,local_1f8,local_234)" (identifier "__lxstat64") (argument_list "(3,local_1f8,local_234)" (( "(") (number_literal "3") (, ",") (identifier "local_1f8") (, ",") (identifier "local_234") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            local_240 = &local_94;\n            iVar10 = __lxstat64(3,local_200,local_240);\n            if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;\n          }" ({ "{") (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" (identifier "local_240") (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "iVar10 = __lxstat64(3,local_200,local_240);" (assignment_expression "iVar10 = __lxstat64(3,local_200,local_240)" (identifier "iVar10") (= "=") (call_expression "__lxstat64(3,local_200,local_240)" (identifier "__lxstat64") (argument_list "(3,local_200,local_240)" (( "(") (number_literal "3") (, ",") (identifier "local_200") (, ",") (identifier "local_240") () ")")))) (; ";")) (if_statement "if ((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;" (if "if") (parenthesized_expression "((iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0'))))" (( "(") (binary_expression "(iVar10 == 0) &&\n               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))" (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')))" (( "(") (parenthesized_expression "((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0'))" (( "(") (binary_expression "(bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||\n                (*(char *)((int)local_1f0 + 0x15) == '\0')" (parenthesized_expression "(bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000))" (( "(") (comma_expression "bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (assignment_expression "bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" (identifier "bVar3") (= "=") (binary_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" (parenthesized_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c)" (( "(") (binary_expression "local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c" (binary_expression "local_94.st_ino._4_4_ == local_98" (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino")) (. ".") (field_identifier "_4_4_")) (== "==") (identifier "local_98")) (&& "&&") (binary_expression "(int)local_94.st_ino == local_9c" (cast_expression "(int)local_94.st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino"))) (== "==") (identifier "local_9c"))) () ")")) (&& "&&") (parenthesized_expression "((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_)" (( "(") (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&\n                          local_94.st_dev._4_4_ == local_f4._4_4_" (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_" (cast_expression "(byte *)local_94.st_dev" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev"))) (== "==") (cast_expression "(byte *)local_f4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_f4._0_4_" (identifier "local_f4") (. ".") (field_identifier "_0_4_")))) (&& "&&") (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_")) (== "==") (field_expression "local_f4._4_4_" (identifier "local_f4") (. ".") (field_identifier "_4_4_")))) () ")")))) (, ",") (comma_expression "psVar26 = local_240,\n                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (assignment_expression "psVar26 = local_240" (identifier "psVar26") (= "=") (identifier "local_240")) (, ",") (binary_expression "(local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)" (binary_expression "(local_94.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_94.st_mode & 0xf000)" (( "(") (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" (identifier "local_94") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) (|| "||") (parenthesized_expression "((local_f4._16_4_ & 0xf000) != 0xa000)" (( "(") (binary_expression "(local_f4._16_4_ & 0xf000) != 0xa000" (parenthesized_expression "(local_f4._16_4_ & 0xf000)" (( "(") (binary_expression "local_f4._16_4_ & 0xf000" (field_expression "local_f4._16_4_" (identifier "local_f4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")"))))) () ")")) (|| "||") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x15)" (( "(") (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x15")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_0001761e;" (goto "goto") (statement_identifier "LAB_0001761e") (; ";"))) (} "}"))) (labeled_statement "LAB_000181e8:\n          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (statement_identifier "LAB_000181e8") (: ":") (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" (identifier "local_1f4") (= "=") (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" (( "(") (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_1f4")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";"))) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";")) (} "}"))) (labeled_statement "LAB_00018440:\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);" (statement_identifier "LAB_00018440") (: ":") (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,cVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,cVar6)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,cVar6)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "cVar6") () ")"))))) (; ";"))) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";")) (} "}"))) (if_statement "if (local_1f0[1] != 2) goto LAB_00016048;" (if "if") (parenthesized_expression "(local_1f0[1] != 2)" (( "(") (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "2")) () ")")) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";"))) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" (identifier "bVar3") (= "=") (false "false")) (; ";")) (expression_statement "bVar4 = false;" (assignment_expression "bVar4 = false" (identifier "bVar4") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_000175fc:\n      local_234 = &local_154;" (statement_identifier "LAB_000175fc") (: ":") (expression_statement "local_234 = &local_154;" (assignment_expression "local_234 = &local_154" (identifier "local_234") (= "=") (pointer_expression "&local_154" (& "&") (identifier "local_154"))) (; ";"))) (expression_statement "psVar26 = (stat64 *)local_1b4;" (assignment_expression "psVar26 = (stat64 *)local_1b4" (identifier "psVar26") (= "=") (cast_expression "(stat64 *)local_1b4" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_1b4"))) (; ";")) (if_statement "if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" (if "if") (parenthesized_expression "(((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000))" (( "(") (binary_expression "((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((local_1b4._16_4_ & 0xf000) != 0xa000)" (( "(") (binary_expression "(local_1b4._16_4_ & 0xf000) != 0xa000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" (( "(") (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")")) (|| "||") (parenthesized_expression "((local_154.st_mode & 0xf000) != 0xa000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")"))) () ")")) (compound_statement "{\nLAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }\n        cVar6 = (char)local_1f0[6];\n        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }\n        if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }\n        goto LAB_00016048;\n      }" ({ "{") (labeled_statement "LAB_0001761e:\n        if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" (statement_identifier "LAB_0001761e") (: ":") (if_statement "if (*local_1f0 != 0) {\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" (if "if") (parenthesized_expression "(*local_1f0 != 0)" (( "(") (binary_expression "*local_1f0 != 0" (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;\n          goto LAB_00017680;\n        }" ({ "{") (if_statement "if (bVar3) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" (if "if") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")")) (compound_statement "{\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" ({ "{") (expression_statement "bVar25 = FUN_00020ea0();" (assignment_expression "bVar25 = FUN_00020ea0()" (identifier "bVar25") (= "=") (call_expression "FUN_00020ea0()" (identifier "FUN_00020ea0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "bVar25 = bVar25 ^ 1;" (assignment_expression "bVar25 = bVar25 ^ 1" (identifier "bVar25") (= "=") (binary_expression "bVar25 ^ 1" (identifier "bVar25") (^ "^") (number_literal "1"))) (; ";")) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" (identifier "cVar6") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (goto_statement "goto LAB_00018431;" (goto "goto") (statement_identifier "LAB_00018431") (; ";")) (} "}"))) (if_statement "if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))\n          goto LAB_000181e8;" (if "if") (parenthesized_expression "(((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))" (( "(") (binary_expression "((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000)" (parenthesized_expression "((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000))" (( "(") (binary_expression "(((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||\n              ((psVar26->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "(((char)local_1f0[6] != '\0') || (local_1f0[1] == 2))" (( "(") (binary_expression "((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)" (parenthesized_expression "((char)local_1f0[6] != '\0')" (( "(") (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(local_1f0[1] == 2)" (( "(") (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "2")) () ")"))) () ")")) (|| "||") (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" (( "(") (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" (( "(") (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" (identifier "psVar26") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")"))) () ")")) (|| "||") (parenthesized_expression "((local_234->st_mode & 0xf000) == 0xa000)" (( "(") (binary_expression "(local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" (( "(") (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")"))) () ")")) (goto_statement "goto LAB_000181e8;" (goto "goto") (statement_identifier "LAB_000181e8") (; ";"))) (goto_statement "goto LAB_00017680;" (goto "goto") (statement_identifier "LAB_00017680") (; ";")) (} "}")))) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]")))) (; ";")) (if_statement "if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }\n        else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" (if "if") (parenthesized_expression "((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0'))" (( "(") (binary_expression "(cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')" (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x15)" (( "(") (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x15")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n          if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }\n        }" ({ "{") (if_statement "if ((psVar26->st_mode & 0xf000) != 0xa000) {\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }" (if "if") (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" (( "(") (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" (( "(") (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" (identifier "psVar26") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")")) (compound_statement "{\nLAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;\n            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }\n            goto LAB_000184a6;\n          }" ({ "{") (labeled_statement "LAB_0001847d:\n            local_238 = (stat64 *)local_234->st_mode;" (statement_identifier "LAB_0001847d") (: ":") (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" (identifier "local_238") (= "=") (cast_expression "(stat64 *)local_234->st_mode" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode")))) (; ";"))) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }\n            else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" (if "if") (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" (( "(") (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" (( "(") (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode"))) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")")) (compound_statement "{\nLAB_0001849c:\n              cVar6 = (char)local_1f0[6];\n            }" ({ "{") (labeled_statement "LAB_0001849c:\n              cVar6 = (char)local_1f0[6];" (statement_identifier "LAB_0001849c") (: ":") (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]")))) (; ";"))) (} "}")) (else_clause "else {\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" (else "else") (compound_statement "{\nLAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;\n              cVar6 = *(char *)((int)local_1f0 + 0x17);\n              if (cVar6 != '\0') goto LAB_00018440;\n              cVar6 = (char)local_1f0[6];\n            }" ({ "{") (labeled_statement "LAB_000187a8:\n              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;" (statement_identifier "LAB_000187a8") (: ":") (if_statement "if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;" (if "if") (parenthesized_expression "((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev))" (( "(") (binary_expression "(*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino) ||\n                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)" (parenthesized_expression "(*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino)" (( "(") (binary_expression "*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||\n                   (int)psVar26->st_ino != (int)local_234->st_ino" (binary_expression "*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4)" (pointer_expression "*(int *)((int)&psVar26->st_ino + 4)" (* "*") (cast_expression "(int *)((int)&psVar26->st_ino + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&psVar26->st_ino + 4)" (( "(") (binary_expression "(int)&psVar26->st_ino + 4" (cast_expression "(int)&psVar26->st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&psVar26->st_ino" (& "&") (field_expression "psVar26->st_ino" (identifier "psVar26") (-> "->") (field_identifier "st_ino")))) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (pointer_expression "*(int *)((int)&local_234->st_ino + 4)" (* "*") (cast_expression "(int *)((int)&local_234->st_ino + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_234->st_ino + 4)" (( "(") (binary_expression "(int)&local_234->st_ino + 4" (cast_expression "(int)&local_234->st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_234->st_ino" (& "&") (field_expression "local_234->st_ino" (identifier "local_234") (-> "->") (field_identifier "st_ino")))) (+ "+") (number_literal "4")) () ")"))))) (|| "||") (binary_expression "(int)psVar26->st_ino != (int)local_234->st_ino" (cast_expression "(int)psVar26->st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "psVar26->st_ino" (identifier "psVar26") (-> "->") (field_identifier "st_ino"))) (!= "!=") (cast_expression "(int)local_234->st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_234->st_ino" (identifier "local_234") (-> "->") (field_identifier "st_ino"))))) () ")")) (|| "||") (parenthesized_expression "(*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev)" (( "(") (binary_expression "*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||\n                  (int)psVar26->st_dev != (int)local_234->st_dev" (binary_expression "*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4)" (pointer_expression "*(int *)((int)&psVar26->st_dev + 4)" (* "*") (cast_expression "(int *)((int)&psVar26->st_dev + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&psVar26->st_dev + 4)" (( "(") (binary_expression "(int)&psVar26->st_dev + 4" (cast_expression "(int)&psVar26->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&psVar26->st_dev" (& "&") (field_expression "psVar26->st_dev" (identifier "psVar26") (-> "->") (field_identifier "st_dev")))) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (pointer_expression "*(int *)((int)&local_234->st_dev + 4)" (* "*") (cast_expression "(int *)((int)&local_234->st_dev + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_234->st_dev + 4)" (( "(") (binary_expression "(int)&local_234->st_dev + 4" (cast_expression "(int)&local_234->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_234->st_dev" (& "&") (field_expression "local_234->st_dev" (identifier "local_234") (-> "->") (field_identifier "st_dev")))) (+ "+") (number_literal "4")) () ")"))))) (|| "||") (binary_expression "(int)psVar26->st_dev != (int)local_234->st_dev" (cast_expression "(int)psVar26->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "psVar26->st_dev" (identifier "psVar26") (-> "->") (field_identifier "st_dev"))) (!= "!=") (cast_expression "(int)local_234->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_234->st_dev" (identifier "local_234") (-> "->") (field_identifier "st_dev"))))) () ")"))) () ")")) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";")))) (expression_statement "cVar6 = *(char *)((int)local_1f0 + 0x17);" (assignment_expression "cVar6 = *(char *)((int)local_1f0 + 0x17)" (identifier "cVar6") (= "=") (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")"))))) (; ";")) (if_statement "if (cVar6 != '\0') goto LAB_00018440;" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00018440;" (goto "goto") (statement_identifier "LAB_00018440") (; ";"))) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]")))) (; ";")) (} "}")))) (goto_statement "goto LAB_000184a6;" (goto "goto") (statement_identifier "LAB_000184a6") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" (else "else") (compound_statement "{\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;\n          if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;\nLAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }\n        }" ({ "{") (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" (identifier "local_238") (= "=") (cast_expression "(stat64 *)local_234->st_mode" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode")))) (; ";")) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;" (if "if") (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" (( "(") (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" (( "(") (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode"))) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")")) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";"))) (if_statement "if ((bVar3) && (1 < local_234->st_nlink)) {\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" (if "if") (parenthesized_expression "((bVar3) && (1 < local_234->st_nlink))" (( "(") (binary_expression "(bVar3) && (1 < local_234->st_nlink)" (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")")) (&& "&&") (parenthesized_expression "(1 < local_234->st_nlink)" (( "(") (binary_expression "1 < local_234->st_nlink" (number_literal "1") (< "<") (field_expression "local_234->st_nlink" (identifier "local_234") (-> "->") (field_identifier "st_nlink"))) () ")"))) () ")")) (compound_statement "{\n            local_238 = psVar26;\n            cVar6 = FUN_00020ea0();\n            if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" ({ "{") (expression_statement "local_238 = psVar26;" (assignment_expression "local_238 = psVar26" (identifier "local_238") (= "=") (identifier "psVar26")) (; ";")) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" (identifier "cVar6") (= "=") (call_expression "FUN_00020ea0()" (identifier "FUN_00020ea0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              psVar26 = local_238;\n              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;\n              goto LAB_0001849c;\n            }" ({ "{") (expression_statement "psVar26 = local_238;" (assignment_expression "psVar26 = local_238" (identifier "psVar26") (= "=") (identifier "local_238")) (; ";")) (if_statement "if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;" (if "if") (parenthesized_expression "((local_238->st_mode & 0xf000) != 0xa000)" (( "(") (binary_expression "(local_238->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_238->st_mode & 0xf000)" (( "(") (binary_expression "local_238->st_mode & 0xf000" (field_expression "local_238->st_mode" (identifier "local_238") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")")) (goto_statement "goto LAB_0001847d;" (goto "goto") (statement_identifier "LAB_0001847d") (; ";"))) (goto_statement "goto LAB_0001849c;" (goto "goto") (statement_identifier "LAB_0001849c") (; ";")) (} "}"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(byte *)(local_1f0 + 6)" (* "*") (cast_expression "(byte *)(local_1f0 + 6)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 6)" (( "(") (binary_expression "local_1f0 + 6" (identifier "local_1f0") (+ "+") (number_literal "6")) () ")")))) () ")"))))) (; ";")) (expression_statement "bVar25 = *(byte *)(local_1f0 + 6) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 6) ^ 1" (identifier "bVar25") (= "=") (binary_expression "*(byte *)(local_1f0 + 6) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 6)" (* "*") (cast_expression "(byte *)(local_1f0 + 6)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 6)" (( "(") (binary_expression "local_1f0 + 6" (identifier "local_1f0") (+ "+") (number_literal "6")) () ")")))) (^ "^") (number_literal "1"))) (; ";")) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" (identifier "cVar6") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (goto_statement "goto LAB_00018431;" (goto "goto") (statement_identifier "LAB_00018431") (; ";")) (} "}"))) (if_statement "if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;" (if "if") (parenthesized_expression "((psVar26->st_mode & 0xf000) != 0xa000)" (( "(") (binary_expression "(psVar26->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" (( "(") (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" (identifier "psVar26") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")")) (goto_statement "goto LAB_000187a8;" (goto "goto") (statement_identifier "LAB_000187a8") (; ";"))) (labeled_statement "LAB_000184a6:\n          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" (statement_identifier "LAB_000184a6") (: ":") (if_statement "if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)) {\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" (if "if") (parenthesized_expression "((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0))" (( "(") (binary_expression "(((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)) &&\n             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)" (parenthesized_expression "(((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink))" (( "(") (binary_expression "((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&\n              (1 < local_234->st_nlink)" (parenthesized_expression "((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000))" (( "(") (binary_expression "(cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)" (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0xa000)" (( "(") (binary_expression "(local_1b4._16_4_ & 0xf000) == 0xa000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" (( "(") (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(1 < local_234->st_nlink)" (( "(") (binary_expression "1 < local_234->st_nlink" (number_literal "1") (< "<") (field_expression "local_234->st_nlink" (identifier "local_234") (-> "->") (field_identifier "st_nlink"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0)" (( "(") (comma_expression "local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "local_238 = psVar26" (identifier "local_238") (= "=") (identifier "psVar26")) (, ",") (comma_expression "pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "pcVar20 = canonicalize_file_name(local_200)" (identifier "pcVar20") (= "=") (call_expression "canonicalize_file_name(local_200)" (identifier "canonicalize_file_name") (argument_list "(local_200)" (( "(") (identifier "local_200") () ")")))) (, ",") (comma_expression "psVar26 = local_238,\n             pcVar20 != (char *)0x0" (assignment_expression "psVar26 = local_238" (identifier "psVar26") (= "=") (identifier "local_238")) (, ",") (binary_expression "pcVar20 != (char *)0x0" (identifier "pcVar20") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))))) () ")"))) () ")")) (compound_statement "{\n            bVar25 = FUN_00020ea0();\n            bVar25 = bVar25 ^ 1;\n            free(pcVar20);\n            cVar6 = '\0';\n            goto LAB_00018431;\n          }" ({ "{") (expression_statement "bVar25 = FUN_00020ea0();" (assignment_expression "bVar25 = FUN_00020ea0()" (identifier "bVar25") (= "=") (call_expression "FUN_00020ea0()" (identifier "FUN_00020ea0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "bVar25 = bVar25 ^ 1;" (assignment_expression "bVar25 = bVar25 ^ 1" (identifier "bVar25") (= "=") (binary_expression "bVar25 ^ 1" (identifier "bVar25") (^ "^") (number_literal "1"))) (; ";")) (expression_statement "free(pcVar20);" (call_expression "free(pcVar20)" (identifier "free") (argument_list "(pcVar20)" (( "(") (identifier "pcVar20") () ")"))) (; ";")) (expression_statement "cVar6 = '\0';" (assignment_expression "cVar6 = '\0'" (identifier "cVar6") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (goto_statement "goto LAB_00018431;" (goto "goto") (statement_identifier "LAB_00018431") (; ";")) (} "}")))) (} "}")))) (if_statement "if (((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           ) {\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" (if "if") (parenthesized_expression "(((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)\n           )" (( "(") (binary_expression "((char)local_1f0[0xb] == '\0') ||\n           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((char)local_1f0[0xb] == '\0')" (( "(") (binary_expression "(char)local_1f0[0xb] == '\0'" (cast_expression "(char)local_1f0[0xb]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[0xb]" (identifier "local_1f0") ([ "[") (number_literal "0xb") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)" (( "(") (comma_expression "local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" (identifier "local_238") (= "=") (cast_expression "(stat64 *)local_234->st_mode" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode")))) (, ",") (binary_expression "((uint)local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" (( "(") (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode"))) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000"))) () ")"))) () ")")) (compound_statement "{\n          if (local_1f0[1] != 2) goto LAB_00017680;\n          if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          local_238 = (stat64 *)local_234->st_mode;\n          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }\n          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }\n        }" ({ "{") (if_statement "if (local_1f0[1] != 2) goto LAB_00017680;" (if "if") (parenthesized_expression "(local_1f0[1] != 2)" (( "(") (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "2")) () ")")) (goto_statement "goto LAB_00017680;" (goto "goto") (statement_identifier "LAB_00017680") (; ";"))) (if_statement "if ((psVar26->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" (if "if") (parenthesized_expression "((psVar26->st_mode & 0xf000) == 0xa000)" (( "(") (binary_expression "(psVar26->st_mode & 0xf000) == 0xa000" (parenthesized_expression "(psVar26->st_mode & 0xf000)" (( "(") (binary_expression "psVar26->st_mode & 0xf000" (field_expression "psVar26->st_mode" (identifier "psVar26") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")")) (compound_statement "{\n            iVar10 = __xstat64(3,local_200,&local_94);\n            if (iVar10 != 0) goto LAB_00016048;\n          }" ({ "{") (expression_statement "iVar10 = __xstat64(3,local_200,&local_94);" (assignment_expression "iVar10 = __xstat64(3,local_200,&local_94)" (identifier "iVar10") (= "=") (call_expression "__xstat64(3,local_200,&local_94)" (identifier "__xstat64") (argument_list "(3,local_200,&local_94)" (( "(") (number_literal "3") (, ",") (identifier "local_200") (, ",") (pointer_expression "&local_94" (& "&") (identifier "local_94")) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) goto LAB_00016048;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";"))) (} "}")) (else_clause "else {\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" (else "else") (compound_statement "{\n            ppbVar17 = (byte **)&local_94;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }\n          }" ({ "{") (expression_statement "ppbVar17 = (byte **)&local_94;" (assignment_expression "ppbVar17 = (byte **)&local_94" (identifier "ppbVar17") (= "=") (cast_expression "(byte **)&local_94" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&local_94" (& "&") (identifier "local_94")))) (; ";")) (for_statement "for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }" (for "for") (( "(") (assignment_expression "iVar10 = 0x18" (identifier "iVar10") (= "=") (number_literal "0x18")) (; ";") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar10 = iVar10 + -1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + -1" (identifier "iVar10") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n              *ppbVar17 = *(byte **)&psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;\n            }" ({ "{") (expression_statement "*ppbVar17 = *(byte **)&psVar26->st_dev;" (assignment_expression "*ppbVar17 = *(byte **)&psVar26->st_dev" (pointer_expression "*ppbVar17" (* "*") (identifier "ppbVar17")) (= "=") (pointer_expression "*(byte **)&psVar26->st_dev" (* "*") (cast_expression "(byte **)&psVar26->st_dev" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&psVar26->st_dev" (& "&") (field_expression "psVar26->st_dev" (identifier "psVar26") (-> "->") (field_identifier "st_dev")))))) (; ";")) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" (identifier "psVar26") (= "=") (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" (( "(") (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "psVar26")) (+ "+") (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-8"))) (+ "+") (number_literal "4")) () ")")))) (; ";")) (expression_statement "ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;" (assignment_expression "ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1" (identifier "ppbVar17") (= "=") (binary_expression "ppbVar17 + (uint)bVar40 * -2 + 1" (binary_expression "ppbVar17 + (uint)bVar40 * -2" (identifier "ppbVar17") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "local_238 = (stat64 *)local_234->st_mode;" (assignment_expression "local_238 = (stat64 *)local_234->st_mode" (identifier "local_238") (= "=") (cast_expression "(stat64 *)local_234->st_mode" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode")))) (; ";")) (if_statement "if (((uint)local_234->st_mode & 0xf000) == 0xa000) {\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }\n          else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" (if "if") (parenthesized_expression "(((uint)local_234->st_mode & 0xf000) == 0xa000)" (( "(") (binary_expression "((uint)local_234->st_mode & 0xf000) == 0xa000" (parenthesized_expression "((uint)local_234->st_mode & 0xf000)" (( "(") (binary_expression "(uint)local_234->st_mode & 0xf000" (cast_expression "(uint)local_234->st_mode" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode"))) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")")) (compound_statement "{\n            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);\n            if (iVar10 != 0) goto LAB_00016048;\n          }" ({ "{") (expression_statement "iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);" (assignment_expression "iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4)" (identifier "iVar10") (= "=") (call_expression "__xstat64(3,local_1f8,(stat64 *)local_f4)" (identifier "__xstat64") (argument_list "(3,local_1f8,(stat64 *)local_f4)" (( "(") (number_literal "3") (, ",") (identifier "local_1f8") (, ",") (cast_expression "(stat64 *)local_f4" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_f4")) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) goto LAB_00016048;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";"))) (} "}")) (else_clause "else {\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" (else "else") (compound_statement "{\n            psVar26 = local_234;\n            puVar37 = (undefined4 *)local_f4;\n            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }\n          }" ({ "{") (expression_statement "psVar26 = local_234;" (assignment_expression "psVar26 = local_234" (identifier "psVar26") (= "=") (identifier "local_234")) (; ";")) (expression_statement "puVar37 = (undefined4 *)local_f4;" (assignment_expression "puVar37 = (undefined4 *)local_f4" (identifier "puVar37") (= "=") (cast_expression "(undefined4 *)local_f4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_f4"))) (; ";")) (for_statement "for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }" (for "for") (( "(") (assignment_expression "iVar10 = 0x18" (identifier "iVar10") (= "=") (number_literal "0x18")) (; ";") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar10 = iVar10 + -1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + -1" (identifier "iVar10") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n              *puVar37 = (int)psVar26->st_dev;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;\n            }" ({ "{") (expression_statement "*puVar37 = (int)psVar26->st_dev;" (assignment_expression "*puVar37 = (int)psVar26->st_dev" (pointer_expression "*puVar37" (* "*") (identifier "puVar37")) (= "=") (cast_expression "(int)psVar26->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "psVar26->st_dev" (identifier "psVar26") (-> "->") (field_identifier "st_dev")))) (; ";")) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" (identifier "psVar26") (= "=") (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" (( "(") (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "psVar26")) (+ "+") (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-8"))) (+ "+") (number_literal "4")) () ")")))) (; ";")) (expression_statement "puVar37 = puVar37 + (uint)bVar40 * -2 + 1;" (assignment_expression "puVar37 = puVar37 + (uint)bVar40 * -2 + 1" (identifier "puVar37") (= "=") (binary_expression "puVar37 + (uint)bVar40 * -2 + 1" (binary_expression "puVar37 + (uint)bVar40 * -2" (identifier "puVar37") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" (if "if") (parenthesized_expression "((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_))" (( "(") (binary_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&\n             (local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)" (parenthesized_expression "(local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c)" (( "(") (binary_expression "local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c" (binary_expression "local_94.st_ino._4_4_ == local_98" (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino")) (. ".") (field_identifier "_4_4_")) (== "==") (identifier "local_98")) (&& "&&") (binary_expression "(int)local_94.st_ino == local_9c" (cast_expression "(int)local_94.st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino"))) (== "==") (identifier "local_9c"))) () ")")) (&& "&&") (parenthesized_expression "(local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)" (( "(") (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_ &&\n              (byte *)local_94.st_dev == (byte *)local_f4._0_4_" (binary_expression "local_94.st_dev._4_4_ == local_f4._4_4_" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_")) (== "==") (field_expression "local_f4._4_4_" (identifier "local_f4") (. ".") (field_identifier "_4_4_"))) (&& "&&") (binary_expression "(byte *)local_94.st_dev == (byte *)local_f4._0_4_" (cast_expression "(byte *)local_94.st_dev" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev"))) (== "==") (cast_expression "(byte *)local_f4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_f4._0_4_" (identifier "local_f4") (. ".") (field_identifier "_0_4_"))))) () ")"))) () ")")) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);\n          }" ({ "{") (if_statement "if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00017680;" (goto "goto") (statement_identifier "LAB_00017680") (; ";"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (binary_expression "(local_234->st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_234->st_mode & 0xf000)" (( "(") (binary_expression "local_234->st_mode & 0xf000" (field_expression "local_234->st_mode" (identifier "local_234") (-> "->") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")"))))) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_00016048;" (goto "goto") (statement_identifier "LAB_00016048") (; ";")) (} "}"))) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" (identifier "cVar6") (= "=") (call_expression "FUN_00020ea0()" (identifier "FUN_00020ea0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 == '\0') {\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));\n        cVar6 = '\x01';\n        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;\nLAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;\n      }" ({ "{") (if_statement "if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;" (if "if") (parenthesized_expression "((*local_1f0 != 0) || (!bVar4))" (( "(") (binary_expression "(*local_1f0 != 0) || (!bVar4)" (parenthesized_expression "(*local_1f0 != 0)" (( "(") (binary_expression "*local_1f0 != 0" (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(!bVar4)" (( "(") (unary_expression "!bVar4" (! "!") (identifier "bVar4")) () ")"))) () ")")) (goto_statement "goto LAB_000181e8;" (goto "goto") (statement_identifier "LAB_000181e8") (; ";"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,*(byte *)(local_1f0 + 6))" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(byte *)(local_1f0 + 6)" (* "*") (cast_expression "(byte *)(local_1f0 + 6)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 6)" (( "(") (binary_expression "local_1f0 + 6" (identifier "local_1f0") (+ "+") (number_literal "6")) () ")")))) () ")"))))) (; ";")) (expression_statement "cVar6 = '\x01';" (assignment_expression "cVar6 = '\x01'" (identifier "cVar6") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "bVar25 = *(byte *)(local_1f0 + 6) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 6) ^ 1" (identifier "bVar25") (= "=") (binary_expression "*(byte *)(local_1f0 + 6) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 6)" (* "*") (cast_expression "(byte *)(local_1f0 + 6)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 6)" (( "(") (binary_expression "local_1f0 + 6" (identifier "local_1f0") (+ "+") (number_literal "6")) () ")")))) (^ "^") (number_literal "1"))) (; ";")) (labeled_statement "LAB_00018431:\n        if (bVar25 != 0) goto LAB_00018440;" (statement_identifier "LAB_00018431") (: ":") (if_statement "if (bVar25 != 0) goto LAB_00018440;" (if "if") (parenthesized_expression "(bVar25 != 0)" (( "(") (binary_expression "bVar25 != 0" (identifier "bVar25") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00018440;" (goto "goto") (statement_identifier "LAB_00018440") (; ";")))) (} "}"))) (labeled_statement "LAB_00017680:\n      FUN_000203c0();" (statement_identifier "LAB_00017680") (: ":") (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";"))) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_000176b3:\n      uVar11 = dcgettext();" (statement_identifier "LAB_000176b3") (: ":") (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";"))) (goto_statement "goto LAB_000176c0;" (goto "goto") (statement_identifier "LAB_000176c0") (; ";")) (} "}"))) (expression_statement "local_230 = (char *)((uint)local_230 & 0xffffff00);" (assignment_expression "local_230 = (char *)((uint)local_230 & 0xffffff00)" (identifier "local_230") (= "=") (cast_expression "(char *)((uint)local_230 & 0xffffff00)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_230 & 0xffffff00)" (( "(") (binary_expression "(uint)local_230 & 0xffffff00" (cast_expression "(uint)local_230" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_230")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (expression_statement "local_214 = (byte **)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (byte **)((uint)local_214._1_3_ << 8)" (identifier "local_214") (= "=") (cast_expression "(byte **)((uint)local_214._1_3_ << 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((uint)local_214._1_3_ << 8)" (( "(") (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (labeled_statement "LAB_00016048:\n    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" (statement_identifier "LAB_00016048") (: ":") (if_statement "if (*(char *)((int)local_1f0 + 0x2d) == '\0') {\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2d) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2d) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2d)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2d)" (( "(") (binary_expression "(int)local_1f0 + 0x2d" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2d")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      if ((char)local_1f0[6] != '\0') goto LAB_00017420;\n      if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }\nLAB_00016cbd:\n      puVar34 = auStack_28c;\n      if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }\nLAB_00016570:\n      puVar29 = puVar34;\n      uVar9 = 1;\n      goto LAB_0001614a;\n    }" ({ "{") (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00017420;" (if "if") (parenthesized_expression "((char)local_1f0[6] != '\0')" (( "(") (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00017420;" (goto "goto") (statement_identifier "LAB_00017420") (; ";"))) (if_statement "if ((local_204 & 0xf000) != 0x4000) {\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }" (if "if") (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" (( "(") (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0x4000")) () ")")) (compound_statement "{\nLAB_00016ca2:\n        puVar34 = auStack_28c;\n        if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;\n      }" ({ "{") (labeled_statement "LAB_00016ca2:\n        puVar34 = auStack_28c;" (statement_identifier "LAB_00016ca2") (: ":") (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";"))) (if_statement "if ((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))\n        goto LAB_00016570;" (if "if") (parenthesized_expression "((local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))" (( "(") (binary_expression "(local_1f0[2] == 2) ||\n           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')))" (parenthesized_expression "(local_1f0[2] == 2)" (( "(") (binary_expression "local_1f0[2] == 2" (subscript_expression "local_1f0[2]" (identifier "local_1f0") ([ "[") (number_literal "2") (] "]")) (== "==") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')))" (( "(") (parenthesized_expression "(local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))" (( "(") (binary_expression "local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')" (binary_expression "local_1f0[2] == 3" (subscript_expression "local_1f0[2]" (identifier "local_1f0") ([ "[") (number_literal "2") (] "]")) (== "==") (number_literal "3")) (&& "&&") (parenthesized_expression "(cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0')" (( "(") (comma_expression "cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'" (assignment_expression "cVar6 = FUN_00014de0()" (identifier "cVar6") (= "=") (call_expression "FUN_00014de0()" (identifier "FUN_00014de0") (argument_list "()" (( "(") () ")")))) (, ",") (comma_expression "puVar34 = auStack_28c, cVar6 == '\0'" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (, ",") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))))) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_00016570;" (goto "goto") (statement_identifier "LAB_00016570") (; ";"))) (} "}"))) (labeled_statement "LAB_00016cbd:\n      puVar34 = auStack_28c;" (statement_identifier "LAB_00016cbd") (: ":") (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";"))) (if_statement "if ((byte)local_1f4 == '\0') {\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }" (if "if") (parenthesized_expression "((byte)local_1f4 == '\0')" (( "(") (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        uVar9 = local_204 & 0xf000;\n        if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }\n        if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }\nLAB_00016d61:\n        iVar8 = *local_1f0;\nLAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        bVar3 = false;\n        if (iVar8 != 0) goto LAB_00018700;\nLAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;\n        iVar10 = unlink(local_1f8);\n        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));\n        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }\n        if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }\n        iVar10 = 0x11;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n        local_230 = (char *)0x0;\n        puVar29 = auStack_28c;\n        goto LAB_00016356;\n      }" ({ "{") (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" (identifier "uVar9") (= "=") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000"))) (; ";")) (if_statement "if ((local_154.st_mode & 0xf000) != 0x4000) {\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }" (if "if") (parenthesized_expression "((local_154.st_mode & 0xf000) != 0x4000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) != 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0x4000")) () ")")) (compound_statement "{\n          if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }\n          iVar10 = *local_1f0;\n          iVar8 = iVar10;\n          if ((byte)local_1fc == '\0') goto LAB_00016d69;\nLAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }\n          iVar10 = 3;\n          iVar8 = 3;\n          if ((char)local_1f0[6] != '\0') goto LAB_00017827;\nLAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }\n          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;\nLAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }\n          pcVar20 = (char *)FUN_0001c300();\n          local_230 = pcVar20;\n          if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }\n          goto LAB_00016259;\n        }" ({ "{") (if_statement "if (uVar9 == 0x4000) {\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" (if "if") (parenthesized_expression "(uVar9 == 0x4000)" (( "(") (binary_expression "uVar9 == 0x4000" (identifier "uVar9") (== "==") (number_literal "0x4000")) () ")")) (compound_statement "{\n            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((byte)local_1fc != '\0') goto LAB_00016d0d;\n            goto LAB_00017827;\n          }" ({ "{") (if_statement "if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" (if "if") (parenthesized_expression "(((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0))" (( "(") (binary_expression "((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)" (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(iVar10 = *local_1f0, iVar10 == 0)" (( "(") (comma_expression "iVar10 = *local_1f0, iVar10 == 0" (assignment_expression "iVar10 = *local_1f0" (identifier "iVar10") (= "=") (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0"))) (, ",") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" ({ "{") (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_000176b3;" (goto "goto") (statement_identifier "LAB_000176b3") (; ";")) (} "}"))) (if_statement "if ((byte)local_1fc != '\0') goto LAB_00016d0d;" (if "if") (parenthesized_expression "((byte)local_1fc != '\0')" (( "(") (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016d0d;" (goto "goto") (statement_identifier "LAB_00016d0d") (; ";"))) (goto_statement "goto LAB_00017827;" (goto "goto") (statement_identifier "LAB_00017827") (; ";")) (} "}"))) (expression_statement "iVar10 = *local_1f0;" (assignment_expression "iVar10 = *local_1f0" (identifier "iVar10") (= "=") (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0"))) (; ";")) (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" (identifier "iVar8") (= "=") (identifier "iVar10")) (; ";")) (if_statement "if ((byte)local_1fc == '\0') goto LAB_00016d69;" (if "if") (parenthesized_expression "((byte)local_1fc == '\0')" (( "(") (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016d69;" (goto "goto") (statement_identifier "LAB_00016d69") (; ";"))) (labeled_statement "LAB_00016d0d:\n          if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" (statement_identifier "LAB_00016d0d") (: ":") (if_statement "if (iVar10 != 3) {\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" (if "if") (parenthesized_expression "(iVar10 != 3)" (( "(") (binary_expression "iVar10 != 3" (identifier "iVar10") (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n            cVar6 = FUN_0001d250();\n            if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }\n            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;\n            goto LAB_00016d61;\n          }" ({ "{") (expression_statement "cVar6 = FUN_0001d250();" (assignment_expression "cVar6 = FUN_0001d250()" (identifier "cVar6") (= "=") (call_expression "FUN_0001d250()" (identifier "FUN_0001d250") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              FUN_000203c0();\n              FUN_000203c0();\n              goto LAB_000176b3;\n            }" ({ "{") (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_000176b3;" (goto "goto") (statement_identifier "LAB_000176b3") (; ";")) (} "}"))) (if_statement "if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;" (if "if") (parenthesized_expression "((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000))" (( "(") (binary_expression "(uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "(uVar9 != 0x4000)" (( "(") (binary_expression "uVar9 != 0x4000" (identifier "uVar9") (!= "!=") (number_literal "0x4000")) () ")")) (&& "&&") (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")"))) () ")")) (goto_statement "goto LAB_0001828c;" (goto "goto") (statement_identifier "LAB_0001828c") (; ";"))) (goto_statement "goto LAB_00016d61;" (goto "goto") (statement_identifier "LAB_00016d61") (; ";")) (} "}")))) (expression_statement "iVar10 = 3;" (assignment_expression "iVar10 = 3" (identifier "iVar10") (= "=") (number_literal "3")) (; ";")) (expression_statement "iVar8 = 3;" (assignment_expression "iVar8 = 3" (identifier "iVar8") (= "=") (number_literal "3")) (; ";")) (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00017827;" (if "if") (parenthesized_expression "((char)local_1f0[6] != '\0')" (( "(") (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00017827;" (goto "goto") (statement_identifier "LAB_00017827") (; ";"))) (labeled_statement "LAB_00018700:\n          pcVar20 = (char *)FUN_0001d030();" (statement_identifier "LAB_00018700") (: ":") (expression_statement "pcVar20 = (char *)FUN_0001d030();" (assignment_expression "pcVar20 = (char *)FUN_0001d030()" (identifier "pcVar20") (= "=") (cast_expression "(char *)FUN_0001d030()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d030()" (identifier "FUN_0001d030") (argument_list "()" (( "(") () ")"))))) (; ";"))) (if_statement "if (*pcVar20 == '.') {\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }" (if "if") (parenthesized_expression "(*pcVar20 == '.')" (( "(") (binary_expression "*pcVar20 == '.'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (== "==") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (compound_statement "{\n            bVar3 = false;\nLAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;\n            if (bVar3) goto LAB_0001785b;\n          }" ({ "{") (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" (identifier "bVar3") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_00018ca5:\n            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;" (statement_identifier "LAB_00018ca5") (: ":") (if_statement "if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;" (if "if") (parenthesized_expression "((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/'))" (( "(") (binary_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||\n               (pcVar20[(pcVar20[1] == '.') + 1] == '/')" (parenthesized_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '\0')" (( "(") (binary_expression "pcVar20[(pcVar20[1] == '.') + 1] == '\0'" (subscript_expression "pcVar20[(pcVar20[1] == '.') + 1]" (identifier "pcVar20") ([ "[") (binary_expression "(pcVar20[1] == '.') + 1" (parenthesized_expression "(pcVar20[1] == '.')" (( "(") (binary_expression "pcVar20[1] == '.'" (subscript_expression "pcVar20[1]" (identifier "pcVar20") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (+ "+") (number_literal "1")) (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(pcVar20[(pcVar20[1] == '.') + 1] == '/')" (( "(") (binary_expression "pcVar20[(pcVar20[1] == '.') + 1] == '/'" (subscript_expression "pcVar20[(pcVar20[1] == '.') + 1]" (identifier "pcVar20") ([ "[") (binary_expression "(pcVar20[1] == '.') + 1" (parenthesized_expression "(pcVar20[1] == '.')" (( "(") (binary_expression "pcVar20[1] == '.'" (subscript_expression "pcVar20[1]" (identifier "pcVar20") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (+ "+") (number_literal "1")) (] "]")) (== "==") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_00016d83;" (goto "goto") (statement_identifier "LAB_00016d83") (; ";")))) (if_statement "if (bVar3) goto LAB_0001785b;" (if "if") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")")) (goto_statement "goto LAB_0001785b;" (goto "goto") (statement_identifier "LAB_0001785b") (; ";"))) (} "}"))) (if_statement "if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;" (if "if") (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (goto_statement "goto LAB_00016da2;" (goto "goto") (statement_identifier "LAB_00016da2") (; ";"))) (labeled_statement "LAB_0001785b:\n          if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }" (statement_identifier "LAB_0001785b") (: ":") (if_statement "if (iVar8 != 3) {\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }" (if "if") (parenthesized_expression "(iVar8 != 3)" (( "(") (binary_expression "iVar8 != 3" (identifier "iVar8") (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n            local_230 = (char *)strlen(pcVar20);\n            local_234 = (stat64 *)FUN_0001d030();\n            sVar16 = strlen((char *)local_234);\n            local_238 = (stat64 *)&DAT_00039770;\n            local_1f4 = DAT_00039770;\n            local_23c = strlen(DAT_00039770);\n            if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }\n          }" ({ "{") (expression_statement "local_230 = (char *)strlen(pcVar20);" (assignment_expression "local_230 = (char *)strlen(pcVar20)" (identifier "local_230") (= "=") (cast_expression "(char *)strlen(pcVar20)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "strlen(pcVar20)" (identifier "strlen") (argument_list "(pcVar20)" (( "(") (identifier "pcVar20") () ")"))))) (; ";")) (expression_statement "local_234 = (stat64 *)FUN_0001d030();" (assignment_expression "local_234 = (stat64 *)FUN_0001d030()" (identifier "local_234") (= "=") (cast_expression "(stat64 *)FUN_0001d030()" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d030()" (identifier "FUN_0001d030") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "sVar16 = strlen((char *)local_234);" (assignment_expression "sVar16 = strlen((char *)local_234)" (identifier "sVar16") (= "=") (call_expression "strlen((char *)local_234)" (identifier "strlen") (argument_list "((char *)local_234)" (( "(") (cast_expression "(char *)local_234" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_234")) () ")")))) (; ";")) (expression_statement "local_238 = (stat64 *)&DAT_00039770;" (assignment_expression "local_238 = (stat64 *)&DAT_00039770" (identifier "local_238") (= "=") (cast_expression "(stat64 *)&DAT_00039770" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_00039770" (& "&") (identifier "DAT_00039770")))) (; ";")) (expression_statement "local_1f4 = DAT_00039770;" (assignment_expression "local_1f4 = DAT_00039770" (identifier "local_1f4") (= "=") (identifier "DAT_00039770")) (; ";")) (expression_statement "local_23c = strlen(DAT_00039770);" (assignment_expression "local_23c = strlen(DAT_00039770)" (identifier "local_23c") (= "=") (call_expression "strlen(DAT_00039770)" (identifier "strlen") (argument_list "(DAT_00039770)" (( "(") (identifier "DAT_00039770") () ")")))) (; ";")) (if_statement "if (((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }" (if "if") (parenthesized_expression "(((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0))" (( "(") (binary_expression "((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&\n               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)" (parenthesized_expression "((local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0))" (( "(") (binary_expression "(local_230 == (char *)(local_23c + sVar16)) &&\n                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)" (parenthesized_expression "(local_230 == (char *)(local_23c + sVar16))" (( "(") (binary_expression "local_230 == (char *)(local_23c + sVar16)" (identifier "local_230") (== "==") (cast_expression "(char *)(local_23c + sVar16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_23c + sVar16)" (( "(") (binary_expression "local_23c + sVar16" (identifier "local_23c") (+ "+") (identifier "sVar16")) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)" (( "(") (comma_expression "iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0" (assignment_expression "iVar10 = memcmp(pcVar20,local_234,sVar16)" (identifier "iVar10") (= "=") (call_expression "memcmp(pcVar20,local_234,sVar16)" (identifier "memcmp") (argument_list "(pcVar20,local_234,sVar16)" (( "(") (identifier "pcVar20") (, ",") (identifier "local_234") (, ",") (identifier "sVar16") () ")")))) (, ",") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)" (( "(") (comma_expression "iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0" (assignment_expression "iVar10 = strcmp(pcVar20 + sVar16,local_1f4)" (identifier "iVar10") (= "=") (call_expression "strcmp(pcVar20 + sVar16,local_1f4)" (identifier "strcmp") (argument_list "(pcVar20 + sVar16,local_1f4)" (( "(") (binary_expression "pcVar20 + sVar16" (identifier "pcVar20") (+ "+") (identifier "sVar16")) (, ",") (identifier "local_1f4") () ")")))) (, ",") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n              sVar16 = strlen(local_1f8);\n              pcVar20 = (char *)FUN_00022ed0();\n              local_1f4 = *(char **)&local_238->st_dev;\n              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);\n              strcpy(pcVar18,local_1f4);\n              iVar10 = __xstat64(3,pcVar20,&local_94);\n              free(pcVar20);\n              if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }\n            }" ({ "{") (expression_statement "sVar16 = strlen(local_1f8);" (assignment_expression "sVar16 = strlen(local_1f8)" (identifier "sVar16") (= "=") (call_expression "strlen(local_1f8)" (identifier "strlen") (argument_list "(local_1f8)" (( "(") (identifier "local_1f8") () ")")))) (; ";")) (expression_statement "pcVar20 = (char *)FUN_00022ed0();" (assignment_expression "pcVar20 = (char *)FUN_00022ed0()" (identifier "pcVar20") (= "=") (cast_expression "(char *)FUN_00022ed0()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00022ed0()" (identifier "FUN_00022ed0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_1f4 = *(char **)&local_238->st_dev;" (assignment_expression "local_1f4 = *(char **)&local_238->st_dev" (identifier "local_1f4") (= "=") (pointer_expression "*(char **)&local_238->st_dev" (* "*") (cast_expression "(char **)&local_238->st_dev" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&local_238->st_dev" (& "&") (field_expression "local_238->st_dev" (identifier "local_238") (-> "->") (field_identifier "st_dev")))))) (; ";")) (expression_statement "pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);" (assignment_expression "pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16)" (identifier "pcVar18") (= "=") (cast_expression "(char *)mempcpy(pcVar20,local_1f8,sVar16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "mempcpy(pcVar20,local_1f8,sVar16)" (identifier "mempcpy") (argument_list "(pcVar20,local_1f8,sVar16)" (( "(") (identifier "pcVar20") (, ",") (identifier "local_1f8") (, ",") (identifier "sVar16") () ")"))))) (; ";")) (expression_statement "strcpy(pcVar18,local_1f4);" (call_expression "strcpy(pcVar18,local_1f4)" (identifier "strcpy") (argument_list "(pcVar18,local_1f4)" (( "(") (identifier "pcVar18") (, ",") (identifier "local_1f4") () ")"))) (; ";")) (expression_statement "iVar10 = __xstat64(3,pcVar20,&local_94);" (assignment_expression "iVar10 = __xstat64(3,pcVar20,&local_94)" (identifier "iVar10") (= "=") (call_expression "__xstat64(3,pcVar20,&local_94)" (identifier "__xstat64") (argument_list "(3,pcVar20,&local_94)" (( "(") (number_literal "3") (, ",") (identifier "pcVar20") (, ",") (pointer_expression "&local_94" (& "&") (identifier "local_94")) () ")")))) (; ";")) (expression_statement "free(pcVar20);" (call_expression "free(pcVar20)" (identifier "free") (argument_list "(pcVar20)" (( "(") (identifier "pcVar20") () ")"))) (; ";")) (if_statement "if (((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }" (if "if") (parenthesized_expression "(((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev))))" (( "(") (binary_expression "((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&\n                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))" (parenthesized_expression "((iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino))" (( "(") (binary_expression "(iVar10 == 0) &&\n                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)" (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)" (( "(") (binary_expression "local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino" (binary_expression "local_158 == local_94.st_ino._4_4_" (identifier "local_158") (== "==") (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino")) (. ".") (field_identifier "_4_4_"))) (&& "&&") (binary_expression "local_15c == (int)local_94.st_ino" (identifier "local_15c") (== "==") (cast_expression "(int)local_94.st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino"))))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))" (( "(") (parenthesized_expression "(local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev))" (( "(") (binary_expression "local_1b4._4_4_ == local_94.st_dev._4_4_ &&\n                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)" (binary_expression "local_1b4._4_4_ == local_94.st_dev._4_4_" (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_")) (== "==") (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_"))) (&& "&&") (parenthesized_expression "((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)" (( "(") (binary_expression "(byte *)local_1b4._0_4_ == (byte *)local_94.st_dev" (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (== "==") (cast_expression "(byte *)local_94.st_dev" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n                uVar11 = dcgettext();\n                FUN_000203c0();\n                FUN_000203c0();\nLAB_000176c0:\n                    \n                error(0,0,uVar11);\n              }" ({ "{") (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_000203c0();" (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_000176c0:\n                    \n                error(0,0,uVar11);" (statement_identifier "LAB_000176c0") (: ":") (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" (identifier "error") (argument_list "(0,0,uVar11)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar11") () ")"))) (; ";"))) (} "}"))) (} "}"))) (} "}")))) (expression_statement "pcVar20 = (char *)FUN_0001c300();" (assignment_expression "pcVar20 = (char *)FUN_0001c300()" (identifier "pcVar20") (= "=") (cast_expression "(char *)FUN_0001c300()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001c300()" (identifier "FUN_0001c300") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_230 = pcVar20;" (assignment_expression "local_230 = pcVar20" (identifier "local_230") (= "=") (identifier "pcVar20")) (; ";")) (if_statement "if (pcVar20 == (char *)0x0) {\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }\n          else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" (if "if") (parenthesized_expression "(pcVar20 == (char *)0x0)" (( "(") (binary_expression "pcVar20 == (char *)0x0" (identifier "pcVar20") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            piVar14 = __errno_location();\n            iVar10 = 0x11;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c;\n            if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }\n          }" ({ "{") (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,1)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (if_statement "if (*piVar14 != 2) {\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }" (if "if") (parenthesized_expression "(*piVar14 != 2)" (( "(") (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n              FUN_00020540();\n              uVar11 = dcgettext();\n                    \n              error(0,*piVar14,uVar11);\n            }" ({ "{") (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*piVar14,uVar11);" (call_expression "error(0,*piVar14,uVar11)" (identifier "error") (argument_list "(0,*piVar14,uVar11)" (( "(") (number_literal "0") (, ",") (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" (else "else") (compound_statement "{\n            sVar16 = strlen(pcVar20);\n            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);\n            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;\n            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;\n            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;\n            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));\n            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;\n            iVar10 = 0x11;\n            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;\n            free(*(void **)(&stack0xfffffd64 + iVar8));\n            local_230 = pcVar18;\n            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n            puVar34 = auStack_28c + iVar8;\n          }" ({ "{") (expression_statement "sVar16 = strlen(pcVar20);" (assignment_expression "sVar16 = strlen(pcVar20)" (identifier "sVar16") (= "=") (call_expression "strlen(pcVar20)" (identifier "strlen") (argument_list "(pcVar20)" (( "(") (identifier "pcVar20") () ")")))) (; ";")) (expression_statement "iVar8 = -(sVar16 + 0x1c & 0xfffffff0);" (assignment_expression "iVar8 = -(sVar16 + 0x1c & 0xfffffff0)" (identifier "iVar8") (= "=") (unary_expression "-(sVar16 + 0x1c & 0xfffffff0)" (- "-") (parenthesized_expression "(sVar16 + 0x1c & 0xfffffff0)" (( "(") (binary_expression "sVar16 + 0x1c & 0xfffffff0" (binary_expression "sVar16 + 0x1c" (identifier "sVar16") (+ "+") (number_literal "0x1c")) (& "&") (number_literal "0xfffffff0")) () ")")))) (; ";")) (expression_statement "*(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;" (assignment_expression "*(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1" (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar8)" (* "*") (cast_expression "(size_t *)(&stack0xfffffd6c + iVar8)" (( "(") (type_descriptor "size_t *" (primitive_type "size_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&stack0xfffffd6c + iVar8)" (( "(") (binary_expression "&stack0xfffffd6c + iVar8" (pointer_expression "&stack0xfffffd6c" (& "&") (identifier "stack0xfffffd6c")) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (binary_expression "sVar16 + 1" (identifier "sVar16") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(char **)(&stack0xfffffd68 + iVar8) = pcVar20;" (assignment_expression "*(char **)(&stack0xfffffd68 + iVar8) = pcVar20" (pointer_expression "*(char **)(&stack0xfffffd68 + iVar8)" (* "*") (cast_expression "(char **)(&stack0xfffffd68 + iVar8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&stack0xfffffd68 + iVar8)" (( "(") (binary_expression "&stack0xfffffd68 + iVar8" (pointer_expression "&stack0xfffffd68" (& "&") (identifier "stack0xfffffd68")) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;" (assignment_expression "*(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8" (pointer_expression "*(int *)(&stack0xfffffd64 + iVar8)" (* "*") (cast_expression "(int *)(&stack0xfffffd64 + iVar8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&stack0xfffffd64 + iVar8)" (( "(") (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" (& "&") (identifier "stack0xfffffd64")) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (binary_expression "(int)&local_280 + iVar8" (cast_expression "(int)&local_280" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_280" (& "&") (identifier "local_280"))) (+ "+") (identifier "iVar8"))) (; ";")) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8)" (* "*") (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&stack0xfffffd60 + iVar8)" (( "(") (binary_expression "&stack0xfffffd60 + iVar8" (pointer_expression "&stack0xfffffd60" (& "&") (identifier "stack0xfffffd60")) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (number_literal "0x179e2")) (; ";")) (expression_statement "pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8));" (assignment_expression "pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" (identifier "pcVar18") (= "=") (cast_expression "(char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "memcpy(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" (identifier "memcpy") (argument_list "(*(void **)(&stack0xfffffd64 + iVar8),\n                                     *(void **)(&stack0xfffffd68 + iVar8),\n                                     *(size_t *)(&stack0xfffffd6c + iVar8))" (( "(") (pointer_expression "*(void **)(&stack0xfffffd64 + iVar8)" (* "*") (cast_expression "(void **)(&stack0xfffffd64 + iVar8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&stack0xfffffd64 + iVar8)" (( "(") (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" (& "&") (identifier "stack0xfffffd64")) (+ "+") (identifier "iVar8")) () ")")))) (, ",") (pointer_expression "*(void **)(&stack0xfffffd68 + iVar8)" (* "*") (cast_expression "(void **)(&stack0xfffffd68 + iVar8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&stack0xfffffd68 + iVar8)" (( "(") (binary_expression "&stack0xfffffd68 + iVar8" (pointer_expression "&stack0xfffffd68" (& "&") (identifier "stack0xfffffd68")) (+ "+") (identifier "iVar8")) () ")")))) (, ",") (pointer_expression "*(size_t *)(&stack0xfffffd6c + iVar8)" (* "*") (cast_expression "(size_t *)(&stack0xfffffd6c + iVar8)" (( "(") (type_descriptor "size_t *" (primitive_type "size_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&stack0xfffffd6c + iVar8)" (( "(") (binary_expression "&stack0xfffffd6c + iVar8" (pointer_expression "&stack0xfffffd6c" (& "&") (identifier "stack0xfffffd6c")) (+ "+") (identifier "iVar8")) () ")")))) () ")"))))) (; ";")) (expression_statement "*(char **)(&stack0xfffffd64 + iVar8) = pcVar20;" (assignment_expression "*(char **)(&stack0xfffffd64 + iVar8) = pcVar20" (pointer_expression "*(char **)(&stack0xfffffd64 + iVar8)" (* "*") (cast_expression "(char **)(&stack0xfffffd64 + iVar8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&stack0xfffffd64 + iVar8)" (( "(") (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" (& "&") (identifier "stack0xfffffd64")) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;" (assignment_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1" (pointer_expression "*(undefined4 *)(&stack0xfffffd60 + iVar8)" (* "*") (cast_expression "(undefined4 *)(&stack0xfffffd60 + iVar8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&stack0xfffffd60 + iVar8)" (( "(") (binary_expression "&stack0xfffffd60 + iVar8" (pointer_expression "&stack0xfffffd60" (& "&") (identifier "stack0xfffffd60")) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (number_literal "0x179f1")) (; ";")) (expression_statement "free(*(void **)(&stack0xfffffd64 + iVar8));" (call_expression "free(*(void **)(&stack0xfffffd64 + iVar8))" (identifier "free") (argument_list "(*(void **)(&stack0xfffffd64 + iVar8))" (( "(") (pointer_expression "*(void **)(&stack0xfffffd64 + iVar8)" (* "*") (cast_expression "(void **)(&stack0xfffffd64 + iVar8)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(&stack0xfffffd64 + iVar8)" (( "(") (binary_expression "&stack0xfffffd64 + iVar8" (pointer_expression "&stack0xfffffd64" (& "&") (identifier "stack0xfffffd64")) (+ "+") (identifier "iVar8")) () ")")))) () ")"))) (; ";")) (expression_statement "local_230 = pcVar18;" (assignment_expression "local_230 = pcVar18" (identifier "local_230") (= "=") (identifier "pcVar18")) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,1)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "puVar34 = auStack_28c + iVar8;" (assignment_expression "puVar34 = auStack_28c + iVar8" (identifier "puVar34") (= "=") (binary_expression "auStack_28c + iVar8" (identifier "auStack_28c") (+ "+") (identifier "iVar8"))) (; ";")) (} "}")))) (goto_statement "goto LAB_00016259;" (goto "goto") (statement_identifier "LAB_00016259") (; ";")) (} "}"))) (if_statement "if (uVar9 != 0x4000) {\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" (if "if") (parenthesized_expression "(uVar9 != 0x4000)" (( "(") (binary_expression "uVar9 != 0x4000" (identifier "uVar9") (!= "!=") (number_literal "0x4000")) () ")")) (compound_statement "{\nLAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }\nLAB_00017827:\n          iVar8 = iVar10;\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }\nLAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();\n          if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }\n          goto LAB_0001785b;\n        }" ({ "{") (labeled_statement "LAB_0001828c:\n          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }" (statement_identifier "LAB_0001828c") (: ":") (if_statement "if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }" (if "if") (parenthesized_expression "(((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0))" (( "(") (binary_expression "((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)" (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(iVar10 = *local_1f0, iVar10 == 0)" (( "(") (comma_expression "iVar10 = *local_1f0, iVar10 == 0" (assignment_expression "iVar10 = *local_1f0" (identifier "iVar10") (= "=") (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0"))) (, ",") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            FUN_00020540();\n            uVar11 = dcgettext();\n                    \n            error(0,0,uVar11);\n          }" ({ "{") (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,0,uVar11);" (call_expression "error(0,0,uVar11)" (identifier "error") (argument_list "(0,0,uVar11)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00017827:\n          iVar8 = iVar10;" (statement_identifier "LAB_00017827") (: ":") (expression_statement "iVar8 = iVar10;" (assignment_expression "iVar8 = iVar10" (identifier "iVar8") (= "=") (identifier "iVar10")) (; ";"))) (if_statement "if ((local_1b4._16_4_ & 0xf000) == 0x4000) {\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }" (if "if") (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" (( "(") (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (compound_statement "{\nLAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;\n            if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }\n          }" ({ "{") (labeled_statement "LAB_0001892a:\n            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" (statement_identifier "LAB_0001892a") (: ":") (if_statement "if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;" (if "if") (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (goto_statement "goto LAB_00018756;" (goto "goto") (statement_identifier "LAB_00018756") (; ";")))) (if_statement "if (iVar8 == 0) {\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              FUN_00020700();\n              FUN_00020700();\n              goto LAB_000176b3;\n            }" ({ "{") (expression_statement "FUN_00020700();" (call_expression "FUN_00020700()" (identifier "FUN_00020700") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00020700();" (call_expression "FUN_00020700()" (identifier "FUN_00020700") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_000176b3;" (goto "goto") (statement_identifier "LAB_000176b3") (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_0001783f:\n          pcVar20 = (char *)FUN_0001d030();" (statement_identifier "LAB_0001783f") (: ":") (expression_statement "pcVar20 = (char *)FUN_0001d030();" (assignment_expression "pcVar20 = (char *)FUN_0001d030()" (identifier "pcVar20") (= "=") (cast_expression "(char *)FUN_0001d030()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d030()" (identifier "FUN_0001d030") (argument_list "()" (( "(") () ")"))))) (; ";"))) (if_statement "if (*pcVar20 == '.') {\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }" (if "if") (parenthesized_expression "(*pcVar20 == '.')" (( "(") (binary_expression "*pcVar20 == '.'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (== "==") (char_literal "'.'" (' "'") (character ".") (' "'"))) () ")")) (compound_statement "{\n            bVar3 = true;\n            goto LAB_00018ca5;\n          }" ({ "{") (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" (identifier "bVar3") (= "=") (true "true")) (; ";")) (goto_statement "goto LAB_00018ca5;" (goto "goto") (statement_identifier "LAB_00018ca5") (; ";")) (} "}"))) (goto_statement "goto LAB_0001785b;" (goto "goto") (statement_identifier "LAB_0001785b") (; ";")) (} "}"))) (labeled_statement "LAB_00016d61:\n        iVar8 = *local_1f0;" (statement_identifier "LAB_00016d61") (: ":") (expression_statement "iVar8 = *local_1f0;" (assignment_expression "iVar8 = *local_1f0" (identifier "iVar8") (= "=") (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0"))) (; ";"))) (labeled_statement "LAB_00016d69:\n        if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" (statement_identifier "LAB_00016d69") (: ":") (if_statement "if ((char)local_1f0[6] != '\0') {\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" (if "if") (parenthesized_expression "((char)local_1f0[6] != '\0')" (( "(") (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;\nLAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;\nLAB_00016da2:\n          uVar38 = local_230._0_1_;\n          iVar10 = 0x11;\n          local_230 = (char *)0x0;\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" ({ "{") (if_statement "if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;" (if "if") (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x4000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" (( "(") (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (goto_statement "goto LAB_0001892a;" (goto "goto") (statement_identifier "LAB_0001892a") (; ";"))) (labeled_statement "LAB_00018756:\n          if (iVar8 != 0) goto LAB_0001783f;" (statement_identifier "LAB_00018756") (: ":") (if_statement "if (iVar8 != 0) goto LAB_0001783f;" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001783f;" (goto "goto") (statement_identifier "LAB_0001783f") (; ";")))) (labeled_statement "LAB_00016da2:\n          uVar38 = local_230._0_1_;" (statement_identifier "LAB_00016da2") (: ":") (expression_statement "uVar38 = local_230._0_1_;" (assignment_expression "uVar38 = local_230._0_1_" (identifier "uVar38") (= "=") (field_expression "local_230._0_1_" (identifier "local_230") (. ".") (field_identifier "_0_1_"))) (; ";"))) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" (identifier "local_230") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,uVar38)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,uVar38)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,uVar38)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "uVar38") () ")"))))) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (goto_statement "goto LAB_00016259;" (goto "goto") (statement_identifier "LAB_00016259") (; ";")) (} "}")))) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" (identifier "bVar3") (= "=") (false "false")) (; ";")) (if_statement "if (iVar8 != 0) goto LAB_00018700;" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00018700;" (goto "goto") (statement_identifier "LAB_00018700") (; ";"))) (labeled_statement "LAB_00016d83:\n        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;" (statement_identifier "LAB_00016d83") (: ":") (if_statement "if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;" (if "if") (parenthesized_expression "(((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))))))" (( "(") (binary_expression "((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||\n           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))" (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000 || bVar3)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) == 0x4000 || bVar3" (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) (|| "||") (identifier "bVar3")) () ")")) (|| "||") (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))" (( "(") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&\n            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2))))" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0' &&\n             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))" (binary_expression "*(char *)((int)local_1f0 + 0x15) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x15)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x15)" (( "(") (binary_expression "(int)local_1f0 + 0x15" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x15")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))" (( "(") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2))" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)" (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x22)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x22)" (( "(") (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x22")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (|| "||") (parenthesized_expression "(local_154.st_nlink < 2)" (( "(") (binary_expression "local_154.st_nlink < 2" (field_expression "local_154.st_nlink" (identifier "local_154") (. ".") (field_identifier "st_nlink")) (< "<") (number_literal "2")) () ")"))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))" (( "(") (parenthesized_expression "(local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000))" (( "(") (binary_expression "local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)" (binary_expression "local_1f0[1] != 2" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "2")) (|| "||") (parenthesized_expression "((local_1b4._16_4_ & 0xf000) == 0x8000)" (( "(") (binary_expression "(local_1b4._16_4_ & 0xf000) == 0x8000" (parenthesized_expression "(local_1b4._16_4_ & 0xf000)" (( "(") (binary_expression "local_1b4._16_4_ & 0xf000" (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x8000")) () ")"))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_00016da2;" (goto "goto") (statement_identifier "LAB_00016da2") (; ";")))) (expression_statement "iVar10 = unlink(local_1f8);" (assignment_expression "iVar10 = unlink(local_1f8)" (identifier "iVar10") (= "=") (call_expression "unlink(local_1f8)" (identifier "unlink") (argument_list "(local_1f8)" (( "(") (identifier "local_1f8") () ")")))) (; ";")) (if_statement "if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }" (if "if") (parenthesized_expression "((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2))" (( "(") (binary_expression "(iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)" (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(piVar14 = __errno_location(), *piVar14 != 2)" (( "(") (comma_expression "piVar14 = __errno_location(), *piVar14 != 2" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (, ",") (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "2"))) () ")"))) () ")")) (compound_statement "{\n          local_1f0 = piVar14;\n          FUN_00020540();\n          uVar11 = dcgettext();\n                    \n          error(0,*local_1f0,uVar11);\n        }" ({ "{") (expression_statement "local_1f0 = piVar14;" (assignment_expression "local_1f0 = piVar14" (identifier "local_1f0") (= "=") (identifier "piVar14")) (; ";")) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*local_1f0,uVar11);" (call_expression "error(0,*local_1f0,uVar11)" (identifier "error") (argument_list "(0,*local_1f0,uVar11)" (( "(") (number_literal "0") (, ",") (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e))" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) () ")"))))) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          iVar10 = 0x11;\n          FUN_00020540();\n          dcgettext();\n          __printf_chk();\n          local_230 = (char *)0x0;\n          puVar34 = auStack_28c;\n          goto LAB_00016259;\n        }" ({ "{") (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "FUN_00020540();" (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" (identifier "__printf_chk") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" (identifier "local_230") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (goto_statement "goto LAB_00016259;" (goto "goto") (statement_identifier "LAB_00016259") (; ";")) (} "}"))) (if_statement "if ((byte)local_1fc != '\0') {\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }" (if "if") (parenthesized_expression "((byte)local_1fc != '\0')" (( "(") (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          iVar10 = 0x11;\n          local_230 = (char *)local_1f0[0xf];\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);\n          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;\n          local_230 = (char *)0x0;\n          iVar10 = 0x11;\n          goto LAB_00016277;\n        }" ({ "{") (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "local_230 = (char *)local_1f0[0xf];" (assignment_expression "local_230 = (char *)local_1f0[0xf]" (identifier "local_230") (= "=") (cast_expression "(char *)local_1f0[0xf]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "local_1f0[0xf]" (identifier "local_1f0") ([ "[") (number_literal "0xf") (] "]")))) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,(byte)local_1fc)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,(byte)local_1fc)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) () ")"))))) (; ";")) (if_statement "if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;" (if "if") (parenthesized_expression "((char *)local_1f0[0xf] == (char *)0x0)" (( "(") (binary_expression "(char *)local_1f0[0xf] == (char *)0x0" (cast_expression "(char *)local_1f0[0xf]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "local_1f0[0xf]" (identifier "local_1f0") ([ "[") (number_literal "0xf") (] "]"))) (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00016356;" (goto "goto") (statement_identifier "LAB_00016356") (; ";"))) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" (identifier "local_230") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (goto_statement "goto LAB_00016277;" (goto "goto") (statement_identifier "LAB_00016277") (; ";")) (} "}"))) (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,1)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" (identifier "local_230") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" (identifier "puVar29") (= "=") (identifier "auStack_28c")) (; ";")) (goto_statement "goto LAB_00016356;" (goto "goto") (statement_identifier "LAB_00016356") (; ";")) (} "}"))) (labeled_statement "LAB_00016570:\n      puVar29 = puVar34;" (statement_identifier "LAB_00016570") (: ":") (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" (identifier "puVar29") (= "=") (identifier "puVar34")) (; ";"))) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" (identifier "uVar9") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";")) (} "}")))) (if_statement "if ((local_204 & 0xf000) == 0x4000) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" (if "if") (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (compound_statement "{\n      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;\nLAB_00017420:\n      iVar10 = local_1f0[2];\n      if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;\n      puVar34 = auStack_28c;\n      if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }\n      goto LAB_00016570;\n    }" ({ "{") (if_statement "if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;" (if "if") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016cbd;" (goto "goto") (statement_identifier "LAB_00016cbd") (; ";"))) (labeled_statement "LAB_00017420:\n      iVar10 = local_1f0[2];" (statement_identifier "LAB_00017420") (: ":") (expression_statement "iVar10 = local_1f0[2];" (assignment_expression "iVar10 = local_1f0[2]" (identifier "iVar10") (= "=") (subscript_expression "local_1f0[2]" (identifier "local_1f0") ([ "[") (number_literal "2") (] "]"))) (; ";"))) (if_statement "if ((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))\n      goto LAB_00016cbd;" (if "if") (parenthesized_expression "((iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))" (( "(") (binary_expression "(iVar10 != 2) &&\n         (((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')))" (parenthesized_expression "(iVar10 != 2)" (( "(") (binary_expression "iVar10 != 2" (identifier "iVar10") (!= "!=") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "(((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')))" (( "(") (parenthesized_expression "((iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))" (( "(") (binary_expression "(iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0')" (parenthesized_expression "(iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0'))))" (( "(") (binary_expression "iVar10 != 3 &&\n           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))" (binary_expression "iVar10 != 3" (identifier "iVar10") (!= "!=") (number_literal "3")) (&& "&&") (parenthesized_expression "(((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')))" (( "(") (parenthesized_expression "((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0'))" (( "(") (binary_expression "(iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||\n            (cVar6 = FUN_00014980(), cVar6 != '\0')" (parenthesized_expression "(iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0'))" (( "(") (binary_expression "iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')" (binary_expression "iVar10 != 4" (identifier "iVar10") (!= "!=") (number_literal "4")) (|| "||") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2f) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2f) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2f)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2f)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2f)" (( "(") (binary_expression "(int)local_1f0 + 0x2f" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2f")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(cVar6 = FUN_00014980(), cVar6 != '\0')" (( "(") (comma_expression "cVar6 = FUN_00014980(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014980()" (identifier "cVar6") (= "=") (call_expression "FUN_00014980()" (identifier "FUN_00014980") (argument_list "()" (( "(") () ")")))) (, ",") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(cVar6 = FUN_00014de0(), cVar6 != '\0')" (( "(") (comma_expression "cVar6 = FUN_00014de0(), cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014de0()" (identifier "cVar6") (= "=") (call_expression "FUN_00014de0()" (identifier "FUN_00014de0") (argument_list "()" (( "(") () ")")))) (, ",") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_00016cbd;" (goto "goto") (statement_identifier "LAB_00016cbd") (; ";"))) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (if_statement "if (local_208 != (undefined1 *)0x0) {\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }" (if "if") (parenthesized_expression "(local_208 != (undefined1 *)0x0)" (( "(") (binary_expression "local_208 != (undefined1 *)0x0" (identifier "local_208") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        *local_208 = 1;\n        puVar34 = auStack_28c;\n      }" ({ "{") (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" (* "*") (identifier "local_208")) (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (} "}"))) (goto_statement "goto LAB_00016570;" (goto "goto") (statement_identifier "LAB_00016570") (; ";")) (} "}"))) (expression_statement "iVar10 = FUN_00021ee0();" (assignment_expression "iVar10 = FUN_00021ee0()" (identifier "iVar10") (= "=") (call_expression "FUN_00021ee0()" (identifier "FUN_00021ee0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 < 0) {\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;\n      goto LAB_00017420;\n    }" ({ "{") (if_statement "if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;" (if "if") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016ca2;" (goto "goto") (statement_identifier "LAB_00016ca2") (; ";"))) (goto_statement "goto LAB_00017420;" (goto "goto") (statement_identifier "LAB_00017420") (; ";")) (} "}"))) (if_statement "if (local_208 != (undefined1 *)0x0) {\n      *local_208 = 1;\n    }" (if "if") (parenthesized_expression "(local_208 != (undefined1 *)0x0)" (( "(") (binary_expression "local_208 != (undefined1 *)0x0" (identifier "local_208") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *local_208 = 1;\n    }" ({ "{") (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" (* "*") (identifier "local_208")) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);" (assignment_expression "iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158)" (identifier "iVar10") (= "=") (call_expression "FUN_0001a5c0(local_1f8,local_15c,local_158)" (identifier "FUN_0001a5c0") (argument_list "(local_1f8,local_15c,local_158)" (( "(") (identifier "local_1f8") (, ",") (identifier "local_15c") (, ",") (identifier "local_158") () ")")))) (; ";")) (expression_statement "puVar34 = auStack_28c;" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (; ";")) (if_statement "if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))\n    goto LAB_00016570;" (if "if") (parenthesized_expression "((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))" (( "(") (binary_expression "(iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0')" (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0')" (( "(") (comma_expression "cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'" (assignment_expression "cVar6 = FUN_00014f10()" (identifier "cVar6") (= "=") (call_expression "FUN_00014f10()" (identifier "FUN_00014f10") (argument_list "()" (( "(") () ")")))) (, ",") (comma_expression "puVar34 = auStack_28c, cVar6 != '\0'" (assignment_expression "puVar34 = auStack_28c" (identifier "puVar34") (= "=") (identifier "auStack_28c")) (, ",") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))))) () ")"))) () ")")) (goto_statement "goto LAB_00016570;" (goto "goto") (statement_identifier "LAB_00016570") (; ";"))) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" (identifier "puVar29") (= "=") (identifier "auStack_28c")) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      FUN_00015060();\n      puVar29 = auStack_28c;\n    }" ({ "{") (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" (identifier "FUN_00015060") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar29 = auStack_28c;" (assignment_expression "puVar29 = auStack_28c" (identifier "puVar29") (= "=") (identifier "auStack_28c")) (; ";")) (} "}"))) (goto_statement "goto LAB_00016148;" (goto "goto") (statement_identifier "LAB_00016148") (; ";")) (} "}"))) (expression_statement "local_214 = (byte **)((uint)local_214._1_3_ << 8);" (assignment_expression "local_214 = (byte **)((uint)local_214._1_3_ << 8)" (identifier "local_214") (= "=") (cast_expression "(byte **)((uint)local_214._1_3_ << 8)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((uint)local_214._1_3_ << 8)" (( "(") (binary_expression "(uint)local_214._1_3_ << 8" (cast_expression "(uint)local_214._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_214._1_3_" (identifier "local_214") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (expression_statement "local_230 = (char *)0x0;" (assignment_expression "local_230 = (char *)0x0" (identifier "local_230") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_00016259:\n  puVar32 = puVar34;" (statement_identifier "LAB_00016259") (: ":") (expression_statement "puVar32 = puVar34;" (assignment_expression "puVar32 = puVar34" (identifier "puVar32") (= "=") (identifier "puVar34")) (; ";"))) (if_statement "if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }\n  else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(((byte)local_1fc == '\0') || (local_1f0[0xf] == 0))" (( "(") (binary_expression "((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)" (parenthesized_expression "((byte)local_1fc == '\0')" (( "(") (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(local_1f0[0xf] == 0)" (( "(") (binary_expression "local_1f0[0xf] == 0" (subscript_expression "local_1f0[0xf]" (identifier "local_1f0") ([ "[") (number_literal "0xf") (] "]")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\nLAB_00016338:\n    puVar29 = puVar32;\n    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }\n    if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }\nLAB_00016356:\n    uVar9 = local_158;\n    iVar8 = local_15c;\n    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }\n    cVar6 = (char)local_1f0[6];\n    if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }\n    if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }\n    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n    *(uint *)(puVar29 + -0xc) = local_158;\n    *(int *)(puVar29 + -0x10) = local_15c;\n    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;\n    local_214 = (byte **)FUN_0001a550();\nLAB_00017737:\n    piVar14 = local_1f0;\n    if (local_214 == (byte **)0x0) goto LAB_00016438;\n    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;\n    *(byte **)(puVar29 + -0xc) = local_20c;\n    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);\n    *(undefined4 *)(puVar29 + -0x14) = 0x17785;\n    cVar6 = FUN_00014f10();\n    puVar34 = puVar29;\n    if (cVar6 != '\0') goto LAB_00016570;\n    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;\nLAB_00016fcb:\n    pcVar20 = local_230;\n    if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }\n  }" ({ "{") (labeled_statement "LAB_00016338:\n    puVar29 = puVar32;" (statement_identifier "LAB_00016338") (: ":") (expression_statement "puVar29 = puVar32;" (assignment_expression "puVar29 = puVar32" (identifier "puVar29") (= "=") (identifier "puVar32")) (; ";"))) (if_statement "if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0'))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\nLAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }\n    }" ({ "{") (labeled_statement "LAB_00016b18:\n      if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" (statement_identifier "LAB_00016b18") (: ":") (if_statement "if ((local_204 & 0xf000) != 0x4000) {\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" (if "if") (parenthesized_expression "((local_204 & 0xf000) != 0x4000)" (( "(") (binary_expression "(local_204 & 0xf000) != 0x4000" (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0x4000")) () ")")) (compound_statement "{\n        *(undefined4 *)(puVar29 + -4) = 0x16b45;\n        FUN_00014d30();\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x16b45;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x16b45" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x16b45")) (; ";")) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" (identifier "FUN_00014d30") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (} "}"))) (if_statement "if (iVar10 == 0) {\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if ((char)local_1f0[6] != '\0') goto LAB_00016524;\n      goto LAB_000165a0;\n    }" ({ "{") (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00016524;" (if "if") (parenthesized_expression "((char)local_1f0[6] != '\0')" (( "(") (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016524;" (goto "goto") (statement_identifier "LAB_00016524") (; ";"))) (goto_statement "goto LAB_000165a0;" (goto "goto") (statement_identifier "LAB_000165a0") (; ";")) (} "}"))) (labeled_statement "LAB_00016356:\n    uVar9 = local_158;" (statement_identifier "LAB_00016356") (: ":") (expression_statement "uVar9 = local_158;" (assignment_expression "uVar9 = local_158" (identifier "uVar9") (= "=") (identifier "local_158")) (; ";"))) (expression_statement "iVar8 = local_15c;" (assignment_expression "iVar8 = local_15c" (identifier "iVar8") (= "=") (identifier "local_15c")) (; ";")) (if_statement "if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2a) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2a) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2a)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2a)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2a)" (( "(") (binary_expression "(int)local_1f0 + 0x2a" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2a")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")"))) () ")")) (compound_statement "{\n      local_214 = (byte **)local_1b4._0_4_;\n      local_210 = local_1b4._4_4_;\n      if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }\n      if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }\nLAB_00016438:\n      cVar6 = (char)local_1f0[6];\nLAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }\n      goto LAB_000165b7;\n    }" ({ "{") (expression_statement "local_214 = (byte **)local_1b4._0_4_;" (assignment_expression "local_214 = (byte **)local_1b4._0_4_" (identifier "local_214") (= "=") (cast_expression "(byte **)local_1b4._0_4_" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_")))) (; ";")) (expression_statement "local_210 = local_1b4._4_4_;" (assignment_expression "local_210 = local_1b4._4_4_" (identifier "local_210") (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (if_statement "if ((byte)local_1fc == '\0') {\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }\n      else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" (if "if") (parenthesized_expression "((byte)local_1fc == '\0')" (( "(") (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -8) = local_214;\n        *(uint *)(puVar29 + -0xc) = uVar9;\n        *(int *)(puVar29 + -0x10) = iVar8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;\n        local_214 = (byte **)FUN_0001a550();\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(byte ***)(puVar29 + -8) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -8) = local_214" (pointer_expression "*(byte ***)(puVar29 + -8)" (* "*") (cast_expression "(byte ***)(puVar29 + -8)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_214")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = iVar8;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar8" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x163c0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x163c0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x163c0")) (; ";")) (expression_statement "local_214 = (byte **)FUN_0001a550();" (assignment_expression "local_214 = (byte **)FUN_0001a550()" (identifier "local_214") (= "=") (cast_expression "(byte **)FUN_0001a550()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0001a550()" (identifier "FUN_0001a550") (argument_list "()" (( "(") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" (else "else") (compound_statement "{\n        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n        *(byte ***)(puVar29 + -0x14) = local_214;\n        *(uint *)(puVar29 + -0x18) = uVar9;\n        *(int *)(puVar29 + -0x1c) = iVar8;\n        *(char **)(puVar29 + -0x20) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;\n        local_214 = (byte **)FUN_0001a5c0();\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(byte ***)(puVar29 + -0x14) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0x14) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0x14)" (* "*") (cast_expression "(byte ***)(puVar29 + -0x14)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_214")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x18) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar8;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar8" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "iVar8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x176f4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x176f4" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x176f4")) (; ";")) (expression_statement "local_214 = (byte **)FUN_0001a5c0();" (assignment_expression "local_214 = (byte **)FUN_0001a5c0()" (identifier "local_214") (= "=") (cast_expression "(byte **)FUN_0001a5c0()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0001a5c0()" (identifier "FUN_0001a5c0") (argument_list "()" (( "(") () ")"))))) (; ";")) (} "}")))) (if_statement "if (local_214 != (byte **)0x0) {\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }" (if "if") (parenthesized_expression "(local_214 != (byte **)0x0)" (( "(") (binary_expression "local_214 != (byte **)0x0" (identifier "local_214") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_200;\n        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }\n        *(byte ***)(puVar29 + -0xc) = local_214;\n        *(char **)(puVar29 + -0x10) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x14) = 0x16406;\n        cVar6 = FUN_00020ea0();\n        if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }\n        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }\n      }" ({ "{") (labeled_statement "LAB_000163d3:\n        *(byte ***)(puVar29 + -0xc) = local_214;" (statement_identifier "LAB_000163d3") (: ":") (expression_statement "*(byte ***)(puVar29 + -0xc) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0xc) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0xc)" (* "*") (cast_expression "(byte ***)(puVar29 + -0xc)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_214")) (; ";"))) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x163e7;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x163e7" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x163e7")) (; ";")) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" (identifier "cVar6") (= "=") (call_expression "FUN_00020ea0()" (identifier "FUN_00020ea0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;\n          error();\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039764;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039764" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "DAT_00039764")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b02;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b02" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18b02")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "DAT_00039768")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b16;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b16" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18b16")) (; ";")) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" (identifier "uVar12") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot copy a directory, %s, into itself, %s"" (" """) (string_content "cannot copy a directory, %s, into itself, %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b2b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b2b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18b2b")) (; ";")) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" (identifier "uVar15") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018b39;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018b39" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00018b39" (& "&") (identifier "UNK_00018b39"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(byte ***)(puVar29 + -0xc) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0xc) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0xc)" (* "*") (cast_expression "(byte ***)(puVar29 + -0xc)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_214")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16406;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16406" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16406")) (; ";")) (expression_statement "cVar6 = FUN_00020ea0();" (assignment_expression "cVar6 = FUN_00020ea0()" (identifier "cVar6") (= "=") (call_expression "FUN_00020ea0()" (identifier "FUN_00020ea0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0x10) = 4;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;\n          uVar11 = FUN_00020540();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;\n          uVar12 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;\n          error();\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -0xc) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "DAT_00039768")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18eee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18eee" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18eee")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";" (assignment_expression "*(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""warning: source directory %s specified more than once"" (" """) (string_content "warning: source directory %s specified more than once") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18f03")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018f0e" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00018f0e" (& "&") (identifier "UNK_00018f0e"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }" (if "if") (parenthesized_expression "((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0'))))" (( "(") (binary_expression "(local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))" (parenthesized_expression "(local_1f0[1] != 4)" (( "(") (binary_expression "local_1f0[1] != 4" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "4")) () ")")) (&& "&&") (parenthesized_expression "((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))" (( "(") (parenthesized_expression "(local_1f0[1] != 3 || ((byte)local_1fc == '\0'))" (( "(") (binary_expression "local_1f0[1] != 3 || ((byte)local_1fc == '\0')" (binary_expression "local_1f0[1] != 3" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "3")) (|| "||") (parenthesized_expression "((byte)local_1fc == '\0')" (( "(") (binary_expression "(byte)local_1fc == '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          *(byte ***)(puVar29 + -8) = local_214;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;\n          error();\n        }" ({ "{") (expression_statement "*(byte ***)(puVar29 + -8) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -8) = local_214" (pointer_expression "*(byte ***)(puVar29 + -8)" (* "*") (cast_expression "(byte ***)(puVar29 + -8)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_214")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d3f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d3f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18d3f")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d53;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d53" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18d53")) (; ";")) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" (identifier "uVar12") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""will not create hard link %s to directory %s"" (" """) (string_content "will not create hard link %s to directory %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d68;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d68" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18d68")) (; ";")) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" (identifier "uVar15") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018d76;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018d76" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00018d76" (& "&") (identifier "UNK_00018d76"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_00016438:\n      cVar6 = (char)local_1f0[6];" (statement_identifier "LAB_00016438") (: ":") (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]")))) (; ";"))) (labeled_statement "LAB_00016afb:\n      if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" (statement_identifier "LAB_00016afb") (: ":") (if_statement "if (cVar6 == '\0') {\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }\n      else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n      }" ({ "{") (labeled_statement "LAB_00016b03:\n        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (statement_identifier "LAB_00016b03") (: ":") (expression_statement "local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (assignment_expression "local_208 = (undefined1 *)((uint)local_1f4 & 0xff)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_1f4 & 0xff)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_1f4 & 0xff)" (( "(") (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_1f4")) (& "&") (number_literal "0xff")) () ")")))) (; ";"))) (} "}")) (else_clause "else {\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" (else "else") (compound_statement "{\nLAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }\nLAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }\n        if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }\n        uVar9 = local_204 & 0xf000;\n        if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }\n        local_208 = (undefined1 *)0x1;\n        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n      }" ({ "{") (labeled_statement "LAB_00016495:\n        if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" (statement_identifier "LAB_00016495") (: ":") (if_statement "if (iVar10 == 0x11) {\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" (if "if") (parenthesized_expression "(iVar10 == 0x11)" (( "(") (binary_expression "iVar10 == 0x11" (identifier "iVar10") (== "==") (number_literal "0x11")) () ")")) (compound_statement "{\n          *(char **)(puVar29 + -0xc) = local_1f8;\n          *(char **)(puVar29 + -0x10) = local_200;\n          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;\n          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }\nLAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }\n          if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }\n          if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }\n          puVar34 = puVar29;\n          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }\n          goto LAB_00016570;\n        }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x174bc;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x174bc" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x174bc")) (; ";")) (expression_statement "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (identifier "rename") (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x174cc;\n            piVar14 = __errno_location();\n            iVar10 = *piVar14;\n            if (iVar10 != 0) goto LAB_0001649e;\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x174cc;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x174cc" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x174cc")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar10 = *piVar14;" (assignment_expression "iVar10 = *piVar14" (identifier "iVar10") (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (if_statement "if (iVar10 != 0) goto LAB_0001649e;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001649e;" (goto "goto") (statement_identifier "LAB_0001649e") (; ";"))) (} "}"))) (labeled_statement "LAB_00016524:\n          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" (statement_identifier "LAB_00016524") (: ":") (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "renamed ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18223;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x18244;\n            FUN_00014d30();\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "renamed ";" (assignment_expression "*(char **)(puVar29 + -0xc) = "renamed "" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""renamed "" (" """) (string_content "renamed ") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18223;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18223" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18223")) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1822d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1822d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1822d")) (; ";")) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" (identifier "__printf_chk") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18244;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18244" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18244")) (; ";")) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" (identifier "FUN_00014d30") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (if_statement "if (*(char *)((int)local_1f0 + 0x21) != '\0') {\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x21) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x21)" (( "(") (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x21")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            *(int **)(puVar29 + -4) = local_1f0;\n            *(undefined4 *)(puVar29 + -8) = 1;\n            *(undefined4 *)(puVar29 + -0xc) = 0;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18208;\n            FUN_00015960();\n          }" ({ "{") (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18208;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18208" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18208")) (; ";")) (expression_statement "FUN_00015960();" (call_expression "FUN_00015960()" (identifier "FUN_00015960") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_208 != (undefined1 *)0x0) {\n            *local_208 = 1;\n          }" (if "if") (parenthesized_expression "(local_208 != (undefined1 *)0x0)" (( "(") (binary_expression "local_208 != (undefined1 *)0x0" (identifier "local_208") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            *local_208 = 1;\n          }" ({ "{") (expression_statement "*local_208 = 1;" (assignment_expression "*local_208 = 1" (pointer_expression "*local_208" (* "*") (identifier "local_208")) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" (identifier "puVar34") (= "=") (identifier "puVar29")) (; ";")) (if_statement "if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }" (if "if") (parenthesized_expression "(((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0'))" (( "(") (binary_expression "((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')" (parenthesized_expression "((byte)local_1fc != '\0')" (( "(") (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x31) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x31) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x31)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x31)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x31)" (( "(") (binary_expression "(int)local_1f0 + 0x31" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x31")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n            *(undefined1 **)(puVar29 + -8) = local_1b4;\n            piVar14 = local_1f0;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(int *)(puVar29 + -0x10) = piVar14[0xf];\n            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;\n            FUN_0001d1d0();\n            uVar9 = local_1fc & 0xff;\n            goto LAB_0001614a;\n          }" ({ "{") (expression_statement "*(undefined1 **)(puVar29 + -8) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1b4")) (; ";")) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar29 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "piVar14[0xf]" (identifier "piVar14") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17ab6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17ab6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17ab6")) (; ";")) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" (identifier "FUN_0001d1d0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar9 = local_1fc & 0xff;" (assignment_expression "uVar9 = local_1fc & 0xff" (identifier "uVar9") (= "=") (binary_expression "local_1fc & 0xff" (identifier "local_1fc") (& "&") (number_literal "0xff"))) (; ";")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";")) (} "}"))) (goto_statement "goto LAB_00016570;" (goto "goto") (statement_identifier "LAB_00016570") (; ";")) (} "}")))) (labeled_statement "LAB_0001649e:\n        if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" (statement_identifier "LAB_0001649e") (: ":") (if_statement "if (iVar10 == 0x16) {\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" (if "if") (parenthesized_expression "(iVar10 == 0x16)" (( "(") (binary_expression "iVar10 == 0x16" (identifier "iVar10") (== "==") (number_literal "0x16")) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar29 + -8) = DAT_00039764;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = DAT_00039768;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185de;\n          uVar12 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;\n          uVar15 = dcgettext();\n          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = uVar12;\n          *(undefined4 *)(puVar29 + -0x18) = uVar15;\n          *(undefined4 *)(puVar29 + -0x1c) = 0;\n          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;\n          error();\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039764;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039764" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "DAT_00039764")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185ca;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185ca" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x185ca")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = DAT_00039768;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = DAT_00039768" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "DAT_00039768")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185de;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185de" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x185de")) (; ";")) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" (identifier "uVar12") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot move %s to a subdirectory of itself, %s"" (" """) (string_content "cannot move %s to a subdirectory of itself, %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x185f3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x185f3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x185f3")) (; ";")) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" (identifier "uVar15") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018606;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018606" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00018606" (& "&") (identifier "UNK_00018606"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (if_statement "if (iVar10 != 0x12) {\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }" (if "if") (parenthesized_expression "(iVar10 != 0x12)" (( "(") (binary_expression "iVar10 != 0x12" (identifier "iVar10") (!= "!=") (number_literal "0x12")) () ")")) (compound_statement "{\n          *(char **)(puVar29 + -8) = local_1f8;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 1;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar29 + -8) = local_200;\n          *(undefined4 *)(puVar29 + -0xc) = 4;\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          local_1f0 = (int *)uVar11;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;\n          uVar11 = FUN_000203c0();\n          *(undefined4 *)(puVar29 + -8) = 5;\n          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";\n          *(undefined4 *)(puVar29 + -0x10) = 0;\n          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;\n          uVar12 = dcgettext();\n          *(int **)(puVar29 + -0x10) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x14) = uVar11;\n          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n          *(int *)(puVar29 + -0x1c) = iVar10;\n          goto LAB_00017594;\n        }" ({ "{") (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180a2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180a2" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x180a2")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1f0 = (int *)uVar11;" (assignment_expression "local_1f0 = (int *)uVar11" (identifier "local_1f0") (= "=") (cast_expression "(int *)uVar11" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar11"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180ba;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180ba" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x180ba")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot move %s to %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot move %s to %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot move %s to %s"" (" """) (string_content "cannot move %s to %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x180cf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x180cf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x180cf")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (goto_statement "goto LAB_00017594;" (goto "goto") (statement_identifier "LAB_00017594") (; ";")) (} "}"))) (expression_statement "uVar9 = local_204 & 0xf000;" (assignment_expression "uVar9 = local_204 & 0xf000" (identifier "uVar9") (= "=") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000"))) (; ";")) (if_statement "if (uVar9 == 0x4000) {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }\n        else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" (if "if") (parenthesized_expression "(uVar9 == 0x4000)" (( "(") (binary_expression "uVar9 == 0x4000" (identifier "uVar9") (== "==") (number_literal "0x4000")) () ")")) (compound_statement "{\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;\n          iVar10 = rmdir(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }\n        }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1825e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1825e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1825e")) (; ";")) (expression_statement "iVar10 = rmdir(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = rmdir(*(char **)(puVar29 + -0x10))" (identifier "iVar10") (= "=") (call_expression "rmdir(*(char **)(puVar29 + -0x10))" (identifier "rmdir") (argument_list "(*(char **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x1826e;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) goto LAB_00017548;\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1826e;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1826e" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1826e")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*piVar14 != 2) goto LAB_00017548;" (if "if") (parenthesized_expression "(*piVar14 != 2)" (( "(") (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "2")) () ")")) (goto_statement "goto LAB_00017548;" (goto "goto") (statement_identifier "LAB_00017548") (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" (else "else") (compound_statement "{\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;\n          iVar10 = unlink(*(char **)(puVar29 + -0x10));\n          if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }\n          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);\n          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n          if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }\n        }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x164d6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x164d6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x164d6")) (; ";")) (expression_statement "iVar10 = unlink(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = unlink(*(char **)(puVar29 + -0x10))" (identifier "iVar10") (= "=") (call_expression "unlink(*(char **)(puVar29 + -0x10))" (identifier "unlink") (argument_list "(*(char **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            *(undefined4 *)(puVar29 + -4) = 0x1753d;\n            piVar14 = __errno_location();\n            if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1753d;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1753d" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1753d")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*piVar14 != 2) {\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }" (if "if") (parenthesized_expression "(*piVar14 != 2)" (( "(") (binary_expression "*piVar14 != 2" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\nLAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f0 = (int *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17572;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x17587;\n              uVar12 = dcgettext();\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\nLAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;\n              error();\n            }" ({ "{") (labeled_statement "LAB_00017548:\n              *(char **)(puVar29 + -8) = local_1f8;" (statement_identifier "LAB_00017548") (: ":") (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1755a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1755a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1755a")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1f0 = (int *)uVar11;" (assignment_expression "local_1f0 = (int *)uVar11" (identifier "local_1f0") (= "=") (cast_expression "(int *)uVar11" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar11"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17572;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17572" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17572")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target";" (assignment_expression "*(char **)(puVar29 + -0xc) =\n                   "inter-device move failed: %s to %s; unable to remove target"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""inter-device move failed: %s to %s; unable to remove target"" (" """) (string_content "inter-device move failed: %s to %s; unable to remove target") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17587;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17587" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17587")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (labeled_statement "LAB_00017594:\n              *(undefined4 *)(puVar29 + -0x20) = 0;" (statement_identifier "LAB_00017594") (: ":") (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";"))) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001759b;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001759b" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001759b" (& "&") (identifier "UNK_0001759b"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);" (assignment_expression "bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e)" (identifier "bVar25") (= "=") (binary_expression "uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e)" (binary_expression "uVar9 != 0x4000" (identifier "uVar9") (!= "!=") (number_literal "0x4000")) (& "&") (pointer_expression "*(byte *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))))) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,bVar25)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,bVar25)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar25") () ")"))))) (; ";")) (if_statement "if (bVar25 != 0) {\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }" (if "if") (parenthesized_expression "(bVar25 != 0)" (( "(") (binary_expression "bVar25 != 0" (identifier "bVar25") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(char **)(puVar29 + -0xc) = "copied ";\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;\n            uVar11 = dcgettext();\n            *(undefined4 *)(puVar29 + -0xc) = uVar11;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;\n            __printf_chk();\n            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;\n            FUN_00014d30();\n            local_208 = (undefined1 *)0x1;\n            goto LAB_000165b7;\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "copied ";" (assignment_expression "*(char **)(puVar29 + -0xc) = "copied "" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""copied "" (" """) (string_content "copied ") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a23;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a23" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17a23")) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a2d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a2d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17a2d")) (; ";")) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" (identifier "__printf_chk") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17a44;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17a44" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17a44")) (; ";")) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" (identifier "FUN_00014d30") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_208 = (undefined1 *)0x1;" (assignment_expression "local_208 = (undefined1 *)0x1" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (goto_statement "goto LAB_000165b7;" (goto "goto") (statement_identifier "LAB_000165b7") (; ";")) (} "}"))) (} "}")))) (expression_statement "local_208 = (undefined1 *)0x1;" (assignment_expression "local_208 = (undefined1 *)0x1" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,1)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (} "}"))))) (goto_statement "goto LAB_000165b7;" (goto "goto") (statement_identifier "LAB_000165b7") (; ";")) (} "}"))) (expression_statement "cVar6 = (char)local_1f0[6];" (assignment_expression "cVar6 = (char)local_1f0[6]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]")))) (; ";")) (if_statement "if (cVar6 == '\0') {\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;\n      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;\n      local_214 = (byte **)0x0;\n      goto LAB_00016b03;\n    }" ({ "{") (if_statement "if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x22) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x22)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x22)" (( "(") (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x22")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000165a0;" (goto "goto") (statement_identifier "LAB_000165a0") (; ";"))) (if_statement "if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016ac0;" (goto "goto") (statement_identifier "LAB_00016ac0") (; ";"))) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" (identifier "local_214") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00016b03;" (goto "goto") (statement_identifier "LAB_00016b03") (; ";")) (} "}"))) (if_statement "if (local_1b4._20_4_ != 1) {\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }" (if "if") (parenthesized_expression "(local_1b4._20_4_ != 1)" (( "(") (binary_expression "local_1b4._20_4_ != 1" (field_expression "local_1b4._20_4_" (identifier "local_1b4") (. ".") (field_identifier "_20_4_")) (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }\n      local_214 = (byte **)0x0;\n      goto LAB_00016495;\n    }" ({ "{") (if_statement "if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))\n      {\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x22) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x22) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x22)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x22)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x22)" (( "(") (binary_expression "(int)local_1f0 + 0x22" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x22")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x17) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\nLAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }\n        goto LAB_00016afb;\n      }" ({ "{") (labeled_statement "LAB_00016ac0:\n        if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" (statement_identifier "LAB_00016ac0") (: ":") (if_statement "if ((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" (if "if") (parenthesized_expression "((1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4))))" (( "(") (binary_expression "(1 < (uint)local_1b4._20_4_) ||\n           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))" (parenthesized_expression "(1 < (uint)local_1b4._20_4_)" (( "(") (binary_expression "1 < (uint)local_1b4._20_4_" (number_literal "1") (< "<") (cast_expression "(uint)local_1b4._20_4_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_1b4._20_4_" (identifier "local_1b4") (. ".") (field_identifier "_20_4_")))) () ")")) (|| "||") (parenthesized_expression "((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)))" (( "(") (parenthesized_expression "(((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4))" (( "(") (binary_expression "((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||\n            (local_214 = (byte **)0x0, local_1f0[1] == 4)" (parenthesized_expression "((byte)local_1fc != '\0' && (local_1f0[1] == 3))" (( "(") (binary_expression "(byte)local_1fc != '\0' && (local_1f0[1] == 3)" (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "(local_1f0[1] == 3)" (( "(") (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "3")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(local_214 = (byte **)0x0, local_1f0[1] == 4)" (( "(") (comma_expression "local_214 = (byte **)0x0, local_1f0[1] == 4" (assignment_expression "local_214 = (byte **)0x0" (identifier "local_214") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (, ",") (binary_expression "local_1f0[1] == 4" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "4"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;\n          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;\n          *(uint *)(puVar29 + -0x18) = local_158;\n          *(int *)(puVar29 + -0x1c) = local_15c;\n          *(char **)(puVar29 + -0x20) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;\n          local_214 = (byte **)FUN_0001a5c0();\n          goto LAB_00017737;\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_158" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_158")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x1c) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_15c")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1772e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1772e" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x1772e")) (; ";")) (expression_statement "local_214 = (byte **)FUN_0001a5c0();" (assignment_expression "local_214 = (byte **)FUN_0001a5c0()" (identifier "local_214") (= "=") (cast_expression "(byte **)FUN_0001a5c0()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0001a5c0()" (identifier "FUN_0001a5c0") (argument_list "()" (( "(") () ")"))))) (; ";")) (goto_statement "goto LAB_00017737;" (goto "goto") (statement_identifier "LAB_00017737") (; ";")) (} "}")))) (goto_statement "goto LAB_00016afb;" (goto "goto") (statement_identifier "LAB_00016afb") (; ";")) (} "}"))) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" (identifier "local_214") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00016495;" (goto "goto") (statement_identifier "LAB_00016495") (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_158" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_158")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_15c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1834d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1834d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1834d")) (; ";")) (expression_statement "local_214 = (byte **)FUN_0001a550();" (assignment_expression "local_214 = (byte **)FUN_0001a550()" (identifier "local_214") (= "=") (cast_expression "(byte **)FUN_0001a550()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0001a550()" (identifier "FUN_0001a550") (argument_list "()" (( "(") () ")"))))) (; ";")) (labeled_statement "LAB_00017737:\n    piVar14 = local_1f0;" (statement_identifier "LAB_00017737") (: ":") (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";"))) (if_statement "if (local_214 == (byte **)0x0) goto LAB_00016438;" (if "if") (parenthesized_expression "(local_214 == (byte **)0x0)" (( "(") (binary_expression "local_214 == (byte **)0x0" (identifier "local_214") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00016438;" (goto "goto") (statement_identifier "LAB_00016438") (; ";"))) (if_statement "if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;" (if "if") (parenthesized_expression "((local_204 & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_204 & 0xf000) == 0x4000" (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (goto_statement "goto LAB_000163d3;" (goto "goto") (statement_identifier "LAB_000163d3") (; ";"))) (expression_statement "*(byte **)(puVar29 + -0xc) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0xc) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0xc)" (* "*") (cast_expression "(byte **)(puVar29 + -0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_20c")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);" (assignment_expression "*(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e)" (pointer_expression "*(uint *)(puVar29 + -0x10)" (* "*") (cast_expression "(uint *)(puVar29 + -0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "(uint)*(byte *)((int)piVar14 + 0x2e)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)((int)piVar14 + 0x2e)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar14 + 0x2e)" (( "(") (binary_expression "(int)piVar14 + 0x2e" (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14")) (+ "+") (number_literal "0x2e")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17785;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17785" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17785")) (; ";")) (expression_statement "cVar6 = FUN_00014f10();" (assignment_expression "cVar6 = FUN_00014f10()" (identifier "cVar6") (= "=") (call_expression "FUN_00014f10()" (identifier "FUN_00014f10") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" (identifier "puVar34") (= "=") (identifier "puVar29")) (; ";")) (if_statement "if (cVar6 != '\0') goto LAB_00016570;" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016570;" (goto "goto") (statement_identifier "LAB_00016570") (; ";"))) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000177a0;" (goto "goto") (statement_identifier "LAB_000177a0") (; ";"))) (labeled_statement "LAB_00016fcb:\n    pcVar20 = local_230;" (statement_identifier "LAB_00016fcb") (: ":") (expression_statement "pcVar20 = local_230;" (assignment_expression "pcVar20 = local_230" (identifier "pcVar20") (= "=") (identifier "local_230")) (; ";"))) (if_statement "if (local_230 != (char *)0x0) {\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }" (if "if") (parenthesized_expression "(local_230 != (char *)0x0)" (( "(") (binary_expression "local_230 != (char *)0x0" (identifier "local_230") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(char **)(puVar29 + -0xc) = local_1f8;\n      *(char **)(puVar29 + -0x10) = pcVar20;\n      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;\n      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n      if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }\n      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }\n    }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16fe8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16fe8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16fe8")) (; ";")) (expression_statement "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (identifier "rename") (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        *(char **)(puVar29 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar29 + -0x10) = 4;\n        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;\n        uVar11 = FUN_00020540();\n        puVar31 = puVar29 + -8;\n        *(undefined4 *)(puVar29 + -8) = 5;\n        ppuVar28 = ppuVar28 + -0x2be3;\n        goto LAB_00016222;\n      }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x182f0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x182f0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x182f0")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar31 = puVar29 + -8;" (assignment_expression "puVar31 = puVar29 + -8" (identifier "puVar31") (= "=") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "ppuVar28 = ppuVar28 + -0x2be3;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2be3" (identifier "ppuVar28") (= "=") (binary_expression "ppuVar28 + -0x2be3" (identifier "ppuVar28") (+ "+") (number_literal "-0x2be3"))) (; ";")) (goto_statement "goto LAB_00016222;" (goto "goto") (statement_identifier "LAB_00016222") (; ";")) (} "}"))) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(char **)(puVar29 + -8) = local_1f8;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 1;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17015;\n        uVar11 = FUN_000203c0();\n        *(char **)(puVar29 + -8) = local_230;\n        *(undefined4 *)(puVar29 + -0xc) = 4;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x17029;\n        uVar12 = FUN_000203c0();\n        *(undefined4 *)(puVar29 + -8) = 5;\n        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;\n        *(undefined4 *)(puVar29 + -0x10) = 0;\n        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;\n        uVar15 = dcgettext();\n        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n        *(undefined4 *)(puVar29 + -0x1c) = uVar15;\n        *(undefined4 *)(puVar29 + -0x20) = 1;\n        *(undefined4 *)(puVar29 + -0x24) = 0x17048;\n        __printf_chk();\n      }" ({ "{") (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17015;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17015" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17015")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_230;" (assignment_expression "*(char **)(puVar29 + -8) = local_230" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_230")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17029;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17029" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17029")) (; ";")) (expression_statement "uVar12 = FUN_000203c0();" (assignment_expression "uVar12 = FUN_000203c0()" (identifier "uVar12") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined ***)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "ppuVar28 + -0x2bde" (identifier "ppuVar28") (+ "+") (number_literal "-0x2bde"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1703e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1703e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1703e")) (; ";")) (expression_statement "uVar15 = dcgettext();" (assignment_expression "uVar15 = dcgettext()" (identifier "uVar15") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = uVar15;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = uVar15" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x17048;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x17048" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x17048")) (; ";")) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" (identifier "__printf_chk") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (} "}")) (else_clause "else {\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" (else "else") (compound_statement "{\nLAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;\n    if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }\n    puVar29 = puVar32;\n    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;\n    if (iVar10 != 0) goto LAB_00016356;\nLAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);\n    local_214 = (byte **)0x0;\nLAB_000165b7:\n    uVar9 = local_204;\n    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }\n    local_234 = (stat64 *)(uVar9 & 0xfff);\n    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }\n  }" ({ "{") (labeled_statement "LAB_00016277:\n    if ((char)local_1f0[6] != '\0') goto LAB_00016338;" (statement_identifier "LAB_00016277") (: ":") (if_statement "if ((char)local_1f0[6] != '\0') goto LAB_00016338;" (if "if") (parenthesized_expression "((char)local_1f0[6] != '\0')" (( "(") (binary_expression "(char)local_1f0[6] != '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016338;" (goto "goto") (statement_identifier "LAB_00016338") (; ";")))) (if_statement "if (*local_1f0 == 0) {\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }" (if "if") (parenthesized_expression "(*local_1f0 == 0)" (( "(") (binary_expression "*local_1f0 == 0" (pointer_expression "*local_1f0" (* "*") (identifier "local_1f0")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      ppbVar17 = (byte **)&local_154;\n      if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }\n      piVar14 = local_1f0;\n      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }\n      goto LAB_00016338;\n    }" ({ "{") (expression_statement "ppbVar17 = (byte **)&local_154;" (assignment_expression "ppbVar17 = (byte **)&local_154" (identifier "ppbVar17") (= "=") (cast_expression "(byte **)&local_154" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&local_154" (& "&") (identifier "local_154")))) (; ";")) (if_statement "if ((char)local_214 == '\0') {\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }" (if "if") (parenthesized_expression "((char)local_214 == '\0')" (( "(") (binary_expression "(char)local_214 == '\0'" (cast_expression "(char)local_214" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_214")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(stat64 **)(puVar32 + -8) = &local_94;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(undefined4 *)(puVar32 + -0x10) = 3;\n        local_214 = (byte **)&local_94;\n        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;\n        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));\n        ppbVar17 = local_214;\n        if (iVar8 != 0) goto LAB_00016338;\n      }" ({ "{") (expression_statement "*(stat64 **)(puVar32 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar32 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar32 + -8)" (* "*") (cast_expression "(stat64 **)(puVar32 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -8)" (( "(") (binary_expression "puVar32 + -8" (identifier "puVar32") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(char **)(puVar32 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar32 + -0xc)" (* "*") (cast_expression "(char **)(puVar32 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -0xc)" (( "(") (binary_expression "puVar32 + -0xc" (identifier "puVar32") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "local_214 = (byte **)&local_94;" (assignment_expression "local_214 = (byte **)&local_94" (identifier "local_214") (= "=") (cast_expression "(byte **)&local_94" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&local_94" (& "&") (identifier "local_94")))) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x17a7d;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x17a7d" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x14)" (( "(") (binary_expression "puVar32 + -0x14" (identifier "puVar32") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17a7d")) (; ";")) (expression_statement "iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8));" (assignment_expression "iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" (identifier "iVar8") (= "=") (call_expression "__lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" (identifier "__lxstat64") (argument_list "(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),\n                           *(stat64 **)(puVar32 + -8))" (( "(") (pointer_expression "*(int *)(puVar32 + -0x10)" (* "*") (cast_expression "(int *)(puVar32 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar32 + -0xc)" (* "*") (cast_expression "(char **)(puVar32 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -0xc)" (( "(") (binary_expression "puVar32 + -0xc" (identifier "puVar32") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar32 + -8)" (* "*") (cast_expression "(stat64 **)(puVar32 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -8)" (( "(") (binary_expression "puVar32 + -8" (identifier "puVar32") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (expression_statement "ppbVar17 = local_214;" (assignment_expression "ppbVar17 = local_214" (identifier "ppbVar17") (= "=") (identifier "local_214")) (; ";")) (if_statement "if (iVar8 != 0) goto LAB_00016338;" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00016338;" (goto "goto") (statement_identifier "LAB_00016338") (; ";"))) (} "}"))) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (if_statement "if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }" (if "if") (parenthesized_expression "(((uint)ppbVar17[4] & 0xf000) == 0xa000)" (( "(") (binary_expression "((uint)ppbVar17[4] & 0xf000) == 0xa000" (parenthesized_expression "((uint)ppbVar17[4] & 0xf000)" (( "(") (binary_expression "(uint)ppbVar17[4] & 0xf000" (cast_expression "(uint)ppbVar17[4]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "ppbVar17[4]" (identifier "ppbVar17") ([ "[") (number_literal "4") (] "]"))) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")")) (compound_statement "{\n        *(byte ***)(puVar32 + -8) = ppbVar17;\n        *(char **)(puVar32 + -0xc) = local_1f8;\n        *(int *)(puVar32 + -0x10) = piVar14[0xf];\n        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;\n        cVar6 = FUN_0001d250();\n        if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }\n      }" ({ "{") (expression_statement "*(byte ***)(puVar32 + -8) = ppbVar17;" (assignment_expression "*(byte ***)(puVar32 + -8) = ppbVar17" (pointer_expression "*(byte ***)(puVar32 + -8)" (* "*") (cast_expression "(byte ***)(puVar32 + -8)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar32 + -8)" (( "(") (binary_expression "puVar32 + -8" (identifier "puVar32") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "ppbVar17")) (; ";")) (expression_statement "*(char **)(puVar32 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar32 + -0xc)" (* "*") (cast_expression "(char **)(puVar32 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -0xc)" (( "(") (binary_expression "puVar32 + -0xc" (identifier "puVar32") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(int *)(puVar32 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar32 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar32 + -0x10)" (* "*") (cast_expression "(int *)(puVar32 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "piVar14[0xf]" (identifier "piVar14") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x162d3;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x162d3" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x14)" (( "(") (binary_expression "puVar32 + -0x14" (identifier "puVar32") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x162d3")) (; ";")) (expression_statement "cVar6 = FUN_0001d250();" (assignment_expression "cVar6 = FUN_0001d250()" (identifier "cVar6") (= "=") (call_expression "FUN_0001d250()" (identifier "FUN_0001d250") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          *(char **)(puVar32 + -8) = local_1f8;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 1;\n          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;\n          uVar11 = FUN_000203c0();\n          *(char **)(puVar32 + -8) = local_200;\n          *(undefined4 *)(puVar32 + -0xc) = 4;\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16300;\n          local_1f0 = (int *)FUN_000203c0();\n          *(undefined4 *)(puVar32 + -8) = 5;\n          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";\n          *(undefined4 *)(puVar32 + -0x10) = 0;\n          *(undefined4 *)(puVar32 + -0x14) = 0x16319;\n          uVar12 = dcgettext();\n          piVar14 = local_1f0;\n          *(undefined4 *)(puVar32 + -0x10) = uVar11;\n          *(int **)(puVar32 + -0x14) = piVar14;\n          *(undefined4 *)(puVar32 + -0x18) = uVar12;\n          *(undefined4 *)(puVar32 + -0x1c) = 0;\n          *(undefined4 *)(puVar32 + -0x20) = 0;\n                    \n          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;\n          error();\n        }" ({ "{") (expression_statement "*(char **)(puVar32 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar32 + -8) = local_1f8" (pointer_expression "*(char **)(puVar32 + -8)" (* "*") (cast_expression "(char **)(puVar32 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -8)" (( "(") (binary_expression "puVar32 + -8" (identifier "puVar32") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar32 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar32 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0xc)" (( "(") (binary_expression "puVar32 + -0xc" (identifier "puVar32") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x162ec;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x162ec" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x14)" (( "(") (binary_expression "puVar32 + -0x14" (identifier "puVar32") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x162ec")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar32 + -8) = local_200;" (assignment_expression "*(char **)(puVar32 + -8) = local_200" (pointer_expression "*(char **)(puVar32 + -8)" (* "*") (cast_expression "(char **)(puVar32 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -8)" (( "(") (binary_expression "puVar32 + -8" (identifier "puVar32") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar32 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar32 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0xc)" (( "(") (binary_expression "puVar32 + -0xc" (identifier "puVar32") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x16300;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x16300" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x14)" (( "(") (binary_expression "puVar32 + -0x14" (identifier "puVar32") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16300")) (; ";")) (expression_statement "local_1f0 = (int *)FUN_000203c0();" (assignment_expression "local_1f0 = (int *)FUN_000203c0()" (identifier "local_1f0") (= "=") (cast_expression "(int *)FUN_000203c0()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar32 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar32 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -8)" (( "(") (binary_expression "puVar32 + -8" (identifier "puVar32") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";" (assignment_expression "*(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s"" (pointer_expression "*(char **)(puVar32 + -0xc)" (* "*") (cast_expression "(char **)(puVar32 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -0xc)" (( "(") (binary_expression "puVar32 + -0xc" (identifier "puVar32") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""will not copy %s through just-created symlink %s"" (" """) (string_content "will not copy %s through just-created symlink %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x14) = 0x16319;" (assignment_expression "*(undefined4 *)(puVar32 + -0x14) = 0x16319" (pointer_expression "*(undefined4 *)(puVar32 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x14)" (( "(") (binary_expression "puVar32 + -0x14" (identifier "puVar32") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16319")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar32 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar32 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x10)" (( "(") (binary_expression "puVar32 + -0x10" (identifier "puVar32") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(int **)(puVar32 + -0x14) = piVar14;" (assignment_expression "*(int **)(puVar32 + -0x14) = piVar14" (pointer_expression "*(int **)(puVar32 + -0x14)" (* "*") (cast_expression "(int **)(puVar32 + -0x14)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -0x14)" (( "(") (binary_expression "puVar32 + -0x14" (identifier "puVar32") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "piVar14")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar32 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar32 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x18)" (( "(") (binary_expression "puVar32 + -0x18" (identifier "puVar32") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x1c)" (( "(") (binary_expression "puVar32 + -0x1c" (identifier "puVar32") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar32 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar32 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar32 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar32 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar32 + -0x20)" (( "(") (binary_expression "puVar32 + -0x20" (identifier "puVar32") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar32 + -0x24) = &UNK_0001632d;" (assignment_expression "*(undefined **)(puVar32 + -0x24) = &UNK_0001632d" (pointer_expression "*(undefined **)(puVar32 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar32 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar32 + -0x24)" (( "(") (binary_expression "puVar32 + -0x24" (identifier "puVar32") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001632d" (& "&") (identifier "UNK_0001632d"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_00016338;" (goto "goto") (statement_identifier "LAB_00016338") (; ";")) (} "}"))) (expression_statement "puVar29 = puVar32;" (assignment_expression "puVar29 = puVar32" (identifier "puVar29") (= "=") (identifier "puVar32")) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016b18;" (goto "goto") (statement_identifier "LAB_00016b18") (; ";"))) (if_statement "if (iVar10 != 0) goto LAB_00016356;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00016356;" (goto "goto") (statement_identifier "LAB_00016356") (; ";"))) (labeled_statement "LAB_000165a0:\n    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (statement_identifier "LAB_000165a0") (: ":") (expression_statement "local_208 = (undefined1 *)((uint)local_1f4 & 0xff);" (assignment_expression "local_208 = (undefined1 *)((uint)local_1f4 & 0xff)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_1f4 & 0xff)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_1f4 & 0xff)" (( "(") (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_1f4")) (& "&") (number_literal "0xff")) () ")")))) (; ";"))) (expression_statement "local_214 = (byte **)0x0;" (assignment_expression "local_214 = (byte **)0x0" (identifier "local_214") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000165b7:\n    uVar9 = local_204;" (statement_identifier "LAB_000165b7") (: ":") (expression_statement "uVar9 = local_204;" (assignment_expression "uVar9 = local_204" (identifier "uVar9") (= "=") (identifier "local_204")) (; ";"))) (if_statement "if (*(char *)((int)local_1f0 + 0x2b) != '\0') {\n      uVar9 = local_1f0[4];\n    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2b) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2b)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2b)" (( "(") (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2b")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      uVar9 = local_1f0[4];\n    }" ({ "{") (expression_statement "uVar9 = local_1f0[4];" (assignment_expression "uVar9 = local_1f0[4]" (identifier "uVar9") (= "=") (subscript_expression "local_1f0[4]" (identifier "local_1f0") ([ "[") (number_literal "4") (] "]"))) (; ";")) (} "}"))) (expression_statement "local_234 = (stat64 *)(uVar9 & 0xfff);" (assignment_expression "local_234 = (stat64 *)(uVar9 & 0xfff)" (identifier "local_234") (= "=") (cast_expression "(stat64 *)(uVar9 & 0xfff)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar9 & 0xfff)" (( "(") (binary_expression "uVar9 & 0xfff" (identifier "uVar9") (& "&") (number_literal "0xfff")) () ")")))) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x1d) == '\0') {\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }\n    else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1d) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1d)" (( "(") (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1d")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      local_238 = (stat64 *)(local_204 & 0xf000);\n      if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }\n    }" ({ "{") (expression_statement "local_238 = (stat64 *)(local_204 & 0xf000);" (assignment_expression "local_238 = (stat64 *)(local_204 & 0xf000)" (identifier "local_238") (= "=") (cast_expression "(stat64 *)(local_204 & 0xf000)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")))) (; ";")) (if_statement "if (local_238 == (stat64 *)0x4000) {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }\n      else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" (if "if") (parenthesized_expression "(local_238 == (stat64 *)0x4000)" (( "(") (binary_expression "local_238 == (stat64 *)0x4000" (identifier "local_238") (== "==") (cast_expression "(stat64 *)0x4000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4000"))) () ")")) (compound_statement "{\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;\n        cVar6 = FUN_000156e0();\n        if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }\n      }" ({ "{") (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_204")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" (* "*") (cast_expression "(char **)(puVar29 + -0x1c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16dee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16dee" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x16dee")) (; ";")) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" (identifier "cVar6") (= "=") (call_expression "FUN_000156e0()" (identifier "FUN_000156e0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          local_23c = (uint)local_234 & 0x12;\n          goto LAB_00016e08;\n        }" ({ "{") (expression_statement "local_23c = (uint)local_234 & 0x12;" (assignment_expression "local_23c = (uint)local_234 & 0x12" (identifier "local_23c") (= "=") (binary_expression "(uint)local_234 & 0x12" (cast_expression "(uint)local_234" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_234")) (& "&") (number_literal "0x12"))) (; ";")) (goto_statement "goto LAB_00016e08;" (goto "goto") (statement_identifier "LAB_00016e08") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" (else "else") (compound_statement "{\n        *(int **)(puVar29 + -0x10) = local_1f0;\n        *(undefined1 **)(puVar29 + -0x14) = local_208;\n        *(uint *)(puVar29 + -0x18) = local_204;\n        *(char **)(puVar29 + -0x1c) = local_1f8;\n        *(char **)(puVar29 + -0x20) = local_200;\n        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;\n        cVar6 = FUN_000156e0();\n        local_23c = 0;\n        if (cVar6 != '\0') goto LAB_0001664e;\n      }" ({ "{") (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_204")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" (* "*") (cast_expression "(char **)(puVar29 + -0x1c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16a82;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16a82" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x16a82")) (; ";")) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" (identifier "cVar6") (= "=") (call_expression "FUN_000156e0()" (identifier "FUN_000156e0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_23c = 0;" (assignment_expression "local_23c = 0" (identifier "local_23c") (= "=") (number_literal "0")) (; ";")) (if_statement "if (cVar6 != '\0') goto LAB_0001664e;" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001664e;" (goto "goto") (statement_identifier "LAB_0001664e") (; ";"))) (} "}")))) (} "}")) (else_clause "else {\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" (else "else") (compound_statement "{\n      *(int **)(puVar29 + -0x10) = local_1f0;\n      *(undefined1 **)(puVar29 + -0x14) = local_208;\n      *(uint *)(puVar29 + -0x18) = local_204;\n      *(char **)(puVar29 + -0x1c) = local_1f8;\n      *(char **)(puVar29 + -0x20) = local_200;\n      *(undefined4 *)(puVar29 + -0x24) = 0x16618;\n      cVar6 = FUN_000156e0();\n      if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }\n    }" ({ "{") (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x14) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x14) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_204")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" (* "*") (cast_expression "(char **)(puVar29 + -0x1c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x16618;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x16618" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x16618")) (; ";")) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" (identifier "cVar6") (= "=") (call_expression "FUN_000156e0()" (identifier "FUN_000156e0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        local_23c = (uint)local_234 & 0x3f;\n        local_238 = (stat64 *)(local_204 & 0xf000);\n        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }\n        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }\n        if (cVar6 == '\0') goto LAB_0001614a;\n      }" ({ "{") (expression_statement "local_23c = (uint)local_234 & 0x3f;" (assignment_expression "local_23c = (uint)local_234 & 0x3f" (identifier "local_23c") (= "=") (binary_expression "(uint)local_234 & 0x3f" (cast_expression "(uint)local_234" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_234")) (& "&") (number_literal "0x3f"))) (; ";")) (expression_statement "local_238 = (stat64 *)(local_204 & 0xf000);" (assignment_expression "local_238 = (stat64 *)(local_204 & 0xf000)" (identifier "local_238") (= "=") (cast_expression "(stat64 *)(local_204 & 0xf000)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")")))) (; ";")) (if_statement "if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }\n        else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" (if "if") (parenthesized_expression "((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000)" (( "(") (binary_expression "(stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000" (cast_expression "(stat64 *)(local_204 & 0xf000)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_204 & 0xf000)" (( "(") (binary_expression "local_204 & 0xf000" (identifier "local_204") (& "&") (number_literal "0xf000")) () ")"))) (== "==") (cast_expression "(stat64 *)0x4000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4000"))) () ")")) (compound_statement "{\nLAB_00016e08:\n          piVar14 = local_1f0;\n          if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }\n          local_20c = (byte *)local_1b4._0_4_;\n          local_224 = local_1b4._4_4_;\n          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);\n          local_238->__pad1 = local_158;\n          local_238->__st_ino = local_1b4._0_4_;\n          *(int **)&local_238->st_dev = local_228;\n          *(int *)((int)&local_238->st_dev + 4) = local_15c;\n          local_238->st_mode = local_1b4._4_4_;\n          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }\n          puVar34 = puVar29 + -0x20;\n          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);\n          uVar9 = (uint)bVar25;\n          if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }\n          if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }\n          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n          puVar29 = puVar29 + -0x20;\n        }" ({ "{") (labeled_statement "LAB_00016e08:\n          piVar14 = local_1f0;" (statement_identifier "LAB_00016e08") (: ":") (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";"))) (if_statement "if (local_228 == (int *)0x0) {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }\n          else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" (if "if") (parenthesized_expression "(local_228 == (int *)0x0)" (( "(") (binary_expression "local_228 == (int *)0x0" (identifier "local_228") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n          }" ({ "{") (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" (identifier "local_20c") (= "=") (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_")))) (; ";")) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" (identifier "local_224") (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (} "}")) (else_clause "else {\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" (else "else") (compound_statement "{\n            local_20c = (byte *)local_1b4._0_4_;\n            local_224 = local_1b4._4_4_;\n            piVar23 = local_228;\n            do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);\n          }" ({ "{") (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" (identifier "local_20c") (= "=") (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_")))) (; ";")) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" (identifier "local_224") (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "piVar23 = local_228;" (assignment_expression "piVar23 = local_228" (identifier "piVar23") (= "=") (identifier "local_228")) (; ";")) (do_statement "do {\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            } while (piVar23 != (int *)0x0);" (do "do") (compound_statement "{\n              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }\n              piVar23 = (int *)*piVar23;\n            }" ({ "{") (if_statement "if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }" (if "if") (parenthesized_expression "((piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3]))" (( "(") (binary_expression "(piVar23[2] == local_158 && piVar23[1] == local_15c) &&\n                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])" (parenthesized_expression "(piVar23[2] == local_158 && piVar23[1] == local_15c)" (( "(") (binary_expression "piVar23[2] == local_158 && piVar23[1] == local_15c" (binary_expression "piVar23[2] == local_158" (subscript_expression "piVar23[2]" (identifier "piVar23") ([ "[") (number_literal "2") (] "]")) (== "==") (identifier "local_158")) (&& "&&") (binary_expression "piVar23[1] == local_15c" (subscript_expression "piVar23[1]" (identifier "piVar23") ([ "[") (number_literal "1") (] "]")) (== "==") (identifier "local_15c"))) () ")")) (&& "&&") (parenthesized_expression "(local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])" (( "(") (binary_expression "local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3]" (binary_expression "local_1b4._4_4_ == piVar23[4]" (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_")) (== "==") (subscript_expression "piVar23[4]" (identifier "piVar23") ([ "[") (number_literal "4") (] "]"))) (&& "&&") (binary_expression "(byte *)local_1b4._0_4_ == (byte *)piVar23[3]" (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (== "==") (cast_expression "(byte *)piVar23[3]" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "piVar23[3]" (identifier "piVar23") ([ "[") (number_literal "3") (] "]"))))) () ")"))) () ")")) (compound_statement "{\n                *(char **)(puVar29 + -0xc) = local_200;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot copy cyclic symbolic link %s";\n                goto LAB_00016e8b;\n              }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16e7e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16e7e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16e7e")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot copy cyclic symbolic link %s";" (assignment_expression "pcVar20 = "cannot copy cyclic symbolic link %s"" (identifier "pcVar20") (= "=") (string_literal ""cannot copy cyclic symbolic link %s"" (" """) (string_content "cannot copy cyclic symbolic link %s") (" """))) (; ";")) (goto_statement "goto LAB_00016e8b;" (goto "goto") (statement_identifier "LAB_00016e8b") (; ";")) (} "}"))) (expression_statement "piVar23 = (int *)*piVar23;" (assignment_expression "piVar23 = (int *)*piVar23" (identifier "piVar23") (= "=") (cast_expression "(int *)*piVar23" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar23" (* "*") (identifier "piVar23")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar23 != (int *)0x0)" (( "(") (binary_expression "piVar23 != (int *)0x0" (identifier "piVar23") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (} "}")))) (expression_statement "local_20c = (byte *)local_1b4._0_4_;" (assignment_expression "local_20c = (byte *)local_1b4._0_4_" (identifier "local_20c") (= "=") (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_")))) (; ";")) (expression_statement "local_224 = local_1b4._4_4_;" (assignment_expression "local_224 = local_1b4._4_4_" (identifier "local_224") (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);" (assignment_expression "local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0)" (identifier "local_238") (= "=") (cast_expression "(stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)(puVar29 + -0x11) & 0xfffffff0)" (( "(") (binary_expression "(uint)(puVar29 + -0x11) & 0xfffffff0" (call_expression "(uint)(puVar29 + -0x11)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(puVar29 + -0x11)" (( "(") (binary_expression "puVar29 + -0x11" (identifier "puVar29") (+ "+") (number_literal "-0x11")) () ")"))) (& "&") (number_literal "0xfffffff0")) () ")")))) (; ";")) (expression_statement "local_238->__pad1 = local_158;" (assignment_expression "local_238->__pad1 = local_158" (field_expression "local_238->__pad1" (identifier "local_238") (-> "->") (field_identifier "__pad1")) (= "=") (identifier "local_158")) (; ";")) (expression_statement "local_238->__st_ino = local_1b4._0_4_;" (assignment_expression "local_238->__st_ino = local_1b4._0_4_" (field_expression "local_238->__st_ino" (identifier "local_238") (-> "->") (field_identifier "__st_ino")) (= "=") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(int **)&local_238->st_dev = local_228;" (assignment_expression "*(int **)&local_238->st_dev = local_228" (pointer_expression "*(int **)&local_238->st_dev" (* "*") (cast_expression "(int **)&local_238->st_dev" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&local_238->st_dev" (& "&") (field_expression "local_238->st_dev" (identifier "local_238") (-> "->") (field_identifier "st_dev"))))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(int *)((int)&local_238->st_dev + 4) = local_15c;" (assignment_expression "*(int *)((int)&local_238->st_dev + 4) = local_15c" (pointer_expression "*(int *)((int)&local_238->st_dev + 4)" (* "*") (cast_expression "(int *)((int)&local_238->st_dev + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_238->st_dev + 4)" (( "(") (binary_expression "(int)&local_238->st_dev + 4" (cast_expression "(int)&local_238->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_238->st_dev" (& "&") (field_expression "local_238->st_dev" (identifier "local_238") (-> "->") (field_identifier "st_dev")))) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "local_15c")) (; ";")) (expression_statement "local_238->st_mode = local_1b4._4_4_;" (assignment_expression "local_238->st_mode = local_1b4._4_4_" (field_expression "local_238->st_mode" (identifier "local_238") (-> "->") (field_identifier "st_mode")) (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (if_statement "if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }\n          else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" (if "if") (parenthesized_expression "(((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000))" (( "(") (binary_expression "((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)" (parenthesized_expression "((byte)local_1f4 == '\0')" (( "(") (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((local_154.st_mode & 0xf000) == 0x4000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) == 0x4000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")"))) () ")")) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }\n            local_24c = local_24c & 0xffffff00;\n            local_23c = 0;\n          }" ({ "{") (if_statement "if (*(char *)((int)local_1f0 + 0x21) == '\0') {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }\n            else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x21) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x21)" (( "(") (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x21")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\n              if (bVar25 != 0) goto LAB_0001889e;\n            }" ({ "{") (expression_statement "bVar25 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar25 = *(byte *)((int)local_1f0 + 0x25)" (identifier "bVar25") (= "=") (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")"))))) (; ";")) (if_statement "if (bVar25 != 0) goto LAB_0001889e;" (if "if") (parenthesized_expression "(bVar25 != 0)" (( "(") (binary_expression "bVar25 != 0" (identifier "bVar25") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001889e;" (goto "goto") (statement_identifier "LAB_0001889e") (; ";"))) (} "}")) (else_clause "else {\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" (else "else") (compound_statement "{\n              bVar25 = *(byte *)((int)local_1f0 + 0x25);\nLAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x28) = 0;\n              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;\n              cVar6 = FUN_00015960();\n              if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;\n            }" ({ "{") (expression_statement "bVar25 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar25 = *(byte *)((int)local_1f0 + 0x25)" (identifier "bVar25") (= "=") (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")"))))) (; ";")) (labeled_statement "LAB_0001889e:\n              *(int **)(puVar29 + -0x24) = local_1f0;" (statement_identifier "LAB_0001889e") (: ":") (expression_statement "*(int **)(puVar29 + -0x24) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x24) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x24)" (* "*") (cast_expression "(int **)(puVar29 + -0x24)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_1f0")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x2c) = (uint)bVar25;" (assignment_expression "*(uint *)(puVar29 + -0x2c) = (uint)bVar25" (pointer_expression "*(uint *)(puVar29 + -0x2c)" (* "*") (cast_expression "(uint *)(puVar29 + -0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x188b3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x188b3" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x188b3")) (; ";")) (expression_statement "cVar6 = FUN_00015960();" (assignment_expression "cVar6 = FUN_00015960()" (identifier "cVar6") (= "=") (call_expression "FUN_00015960()" (identifier "FUN_00015960") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))\n              goto LAB_00016fad;" (if "if") (parenthesized_expression "((cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))" (( "(") (binary_expression "(cVar6 == '\0') &&\n                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0')" (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0')" (( "(") (comma_expression "puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'" (assignment_expression "puVar34 = puVar29 + -0x20" (identifier "puVar34") (= "=") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20"))) (, ",") (binary_expression "*(char *)((int)piVar14 + 0x26) != '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x26)" (* "*") (cast_expression "(char *)((int)piVar14 + 0x26)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar14 + 0x26)" (( "(") (binary_expression "(int)piVar14 + 0x26" (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14")) (+ "+") (number_literal "0x26")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (goto_statement "goto LAB_00016fad;" (goto "goto") (statement_identifier "LAB_00016fad") (; ";"))) (} "}")))) (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" (identifier "local_24c") (= "=") (binary_expression "local_24c & 0xffffff00" (identifier "local_24c") (& "&") (number_literal "0xffffff00"))) (; ";")) (expression_statement "local_23c = 0;" (assignment_expression "local_23c = 0" (identifier "local_23c") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" (else "else") (compound_statement "{\n            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;\n            *(char **)(puVar29 + -0x30) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17154;\n            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }\n            *(stat64 **)(puVar29 + -0x28) = &local_154;\n            *(char **)(puVar29 + -0x2c) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x30) = 3;\n            *(undefined4 *)(puVar29 + -0x34) = 0x17176;\n            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));\n            _Var5 = local_154.st_mode;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }\n            local_24c = local_24c & 0xffffff00;\n            if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }\n            if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }\n            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }\n          }" ({ "{") (expression_statement "*(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;" (assignment_expression "*(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234" (pointer_expression "*(uint *)(puVar29 + -0x2c)" (* "*") (cast_expression "(uint *)(puVar29 + -0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (binary_expression "~local_23c & (uint)local_234" (unary_expression "~local_23c" (~ "~") (identifier "local_23c")) (& "&") (cast_expression "(uint)local_234" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_234")))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17154;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17154" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x17154")) (; ";")) (expression_statement "iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));" (assignment_expression "iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" (identifier "iVar10") (= "=") (call_expression "mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" (identifier "mkdir") (argument_list "(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (, ",") (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -0x2c)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 100000;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot create directory %s";\nLAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;\n              *(undefined4 *)(puVar33 + -8) = 0;\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar33 + -0xc) = uVar11;\n              *(undefined4 *)(puVar33 + -0x10) = uVar12;\n              *(int *)(puVar33 + -0x14) = *piVar14;\n              *(undefined4 *)(puVar33 + -0x18) = 0;\n                    \n              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;\n              error();\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 100000;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 100000" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "100000")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot create directory %s";" (assignment_expression "pcVar20 = "cannot create directory %s"" (identifier "pcVar20") (= "=") (string_literal ""cannot create directory %s"" (" """) (string_content "cannot create directory %s") (" """))) (; ";")) (labeled_statement "LAB_00016f90:\n              *(char **)(puVar33 + -4) = pcVar20;" (statement_identifier "LAB_00016f90") (: ":") (expression_statement "*(char **)(puVar33 + -4) = pcVar20;" (assignment_expression "*(char **)(puVar33 + -4) = pcVar20" (pointer_expression "*(char **)(puVar33 + -4)" (* "*") (cast_expression "(char **)(puVar33 + -4)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar33 + -4)" (( "(") (binary_expression "puVar33 + -4" (identifier "puVar33") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pcVar20")) (; ";"))) (expression_statement "*(undefined4 *)(puVar33 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar33 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar33 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar33 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -8)" (( "(") (binary_expression "puVar33 + -8" (identifier "puVar33") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = 0x16f98;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = 0x16f98" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar33 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -0xc)" (( "(") (binary_expression "puVar33 + -0xc" (identifier "puVar33") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x16f98")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = 0x16f9f;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = 0x16f9f" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar33 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -0xc)" (( "(") (binary_expression "puVar33 + -0xc" (identifier "puVar33") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x16f9f")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar33 + -0xc) = uVar11;" (assignment_expression "*(undefined4 *)(puVar33 + -0xc) = uVar11" (pointer_expression "*(undefined4 *)(puVar33 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar33 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -0xc)" (( "(") (binary_expression "puVar33 + -0xc" (identifier "puVar33") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar33 + -0x10) = uVar12;" (assignment_expression "*(undefined4 *)(puVar33 + -0x10) = uVar12" (pointer_expression "*(undefined4 *)(puVar33 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar33 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -0x10)" (( "(") (binary_expression "puVar33 + -0x10" (identifier "puVar33") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar33 + -0x14) = *piVar14;" (assignment_expression "*(int *)(puVar33 + -0x14) = *piVar14" (pointer_expression "*(int *)(puVar33 + -0x14)" (* "*") (cast_expression "(int *)(puVar33 + -0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -0x14)" (( "(") (binary_expression "puVar33 + -0x14" (identifier "puVar33") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar33 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar33 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar33 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar33 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar33 + -0x18)" (( "(") (binary_expression "puVar33 + -0x18" (identifier "puVar33") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;" (assignment_expression "*(undefined **)(puVar33 + -0x1c) = &UNK_00016faa" (pointer_expression "*(undefined **)(puVar33 + -0x1c)" (* "*") (cast_expression "(undefined **)(puVar33 + -0x1c)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar33 + -0x1c)" (( "(") (binary_expression "puVar33 + -0x1c" (identifier "puVar33") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "&UNK_00016faa" (& "&") (identifier "UNK_00016faa"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(stat64 **)(puVar29 + -0x28) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -0x28) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -0x28)" (* "*") (cast_expression "(stat64 **)(puVar29 + -0x28)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (pointer_expression "&local_154" (& "&") (identifier "local_154"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17176;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17176" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x17176")) (; ";")) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" (identifier "iVar10") (= "=") (call_expression "__lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" (identifier "__lxstat64") (argument_list "(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),\n                                *(stat64 **)(puVar29 + -0x28))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x30)" (* "*") (cast_expression "(int *)(puVar29 + -0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -0x28)" (* "*") (cast_expression "(stat64 **)(puVar29 + -0x28)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) () ")")))) (; ";")) (expression_statement "_Var5 = local_154.st_mode;" (assignment_expression "_Var5 = local_154.st_mode" (identifier "_Var5") (= "=") (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode"))) (; ";")) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -0x28;\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              pcVar20 = "cannot stat %s";\n              goto LAB_00016f90;\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x18ce1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x18ce1" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x18ce1")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot stat %s";" (assignment_expression "pcVar20 = "cannot stat %s"" (identifier "pcVar20") (= "=") (string_literal ""cannot stat %s"" (" """) (string_content "cannot stat %s") (" """))) (; ";")) (goto_statement "goto LAB_00016f90;" (goto "goto") (statement_identifier "LAB_00016f90") (; ";")) (} "}"))) (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" (identifier "local_24c") (= "=") (binary_expression "local_24c & 0xffffff00" (identifier "local_24c") (& "&") (number_literal "0xffffff00"))) (; ";")) (if_statement "if ((local_154.st_mode & 0x1c0) != 0x1c0) {\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }" (if "if") (parenthesized_expression "((local_154.st_mode & 0x1c0) != 0x1c0)" (( "(") (binary_expression "(local_154.st_mode & 0x1c0) != 0x1c0" (parenthesized_expression "(local_154.st_mode & 0x1c0)" (( "(") (binary_expression "local_154.st_mode & 0x1c0" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0x1c0")) () ")")) (!= "!=") (number_literal "0x1c0")) () ")")) (compound_statement "{\n              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;\n              *(char **)(puVar29 + -0x30) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;\n              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));\n              local_270 = _Var5;\n              local_24c = CONCAT31(local_24c._1_3_,1);\n              if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }\n            }" ({ "{") (expression_statement "*(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;" (assignment_expression "*(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0" (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -0x2c)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (binary_expression "local_154.st_mode | 0x1c0" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (| "|") (number_literal "0x1c0"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x171b2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x171b2" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x171b2")) (; ";")) (expression_statement "iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));" (assignment_expression "iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" (identifier "iVar10") (= "=") (call_expression "chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" (identifier "chmod") (argument_list "(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (, ",") (pointer_expression "*(__mode_t *)(puVar29 + -0x2c)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -0x2c)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) () ")")))) (; ";")) (expression_statement "local_270 = _Var5;" (assignment_expression "local_270 = _Var5" (identifier "local_270") (= "=") (identifier "_Var5")) (; ";")) (expression_statement "local_24c = CONCAT31(local_24c._1_3_,1);" (assignment_expression "local_24c = CONCAT31(local_24c._1_3_,1)" (identifier "local_24c") (= "=") (call_expression "CONCAT31(local_24c._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_24c._1_3_,1)" (( "(") (field_expression "local_24c._1_3_" (identifier "local_24c") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x19082;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -0x28;\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                pcVar20 = "setting permissions for %s";\n                goto LAB_00016f90;\n              }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19082;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19082" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x19082")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -0x28;" (assignment_expression "puVar33 = puVar29 + -0x28" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "setting permissions for %s";" (assignment_expression "pcVar20 = "setting permissions for %s"" (identifier "pcVar20") (= "=") (string_literal ""setting permissions for %s"" (" """) (string_content "setting permissions for %s") (" """))) (; ";")) (goto_statement "goto LAB_00016f90;" (goto "goto") (statement_identifier "LAB_00016f90") (; ";")) (} "}"))) (} "}"))) (if_statement "if (*local_21c == (code)0x0) {\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }" (if "if") (parenthesized_expression "(*local_21c == (code)0x0)" (( "(") (binary_expression "*local_21c == (code)0x0" (pointer_expression "*local_21c" (* "*") (identifier "local_21c")) (== "==") (cast_expression "(code)0x0" (( "(") (type_descriptor "code" (type_identifier "code")) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;\n              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;\n              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;\n              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;\n              *(char **)(puVar29 + -0x40) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;\n              FUN_0001a5c0();\n              *local_21c = (code)0x1;\n            }" ({ "{") (expression_statement "*(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;" (assignment_expression "*(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_" (pointer_expression "*(__ino_t *)(puVar29 + -0x30)" (* "*") (cast_expression "(__ino_t *)(puVar29 + -0x30)" (( "(") (type_descriptor "__ino_t *" (type_identifier "__ino_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (field_expression "local_154.st_dev._4_4_" (field_expression "local_154.st_dev" (identifier "local_154") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;" (assignment_expression "*(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev" (pointer_expression "*(byte **)(puVar29 + -0x34)" (* "*") (cast_expression "(byte **)(puVar29 + -0x34)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (cast_expression "(byte *)local_154.st_dev" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_154.st_dev" (identifier "local_154") (. ".") (field_identifier "st_dev")))) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;" (assignment_expression "*(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_" (pointer_expression "*(uint *)(puVar29 + -0x38)" (* "*") (cast_expression "(uint *)(puVar29 + -0x38)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x38)" (( "(") (binary_expression "puVar29 + -0x38" (identifier "puVar29") (+ "+") (number_literal "-0x38")) () ")")))) (= "=") (field_expression "local_154.st_ino._4_4_" (field_expression "local_154.st_ino" (identifier "local_154") (. ".") (field_identifier "st_ino")) (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;" (assignment_expression "*(int *)(puVar29 + -0x3c) = (int)local_154.st_ino" (pointer_expression "*(int *)(puVar29 + -0x3c)" (* "*") (cast_expression "(int *)(puVar29 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x3c)" (( "(") (binary_expression "puVar29 + -0x3c" (identifier "puVar29") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (cast_expression "(int)local_154.st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_154.st_ino" (identifier "local_154") (. ".") (field_identifier "st_ino")))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x40) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x40) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x40)" (* "*") (cast_expression "(char **)(puVar29 + -0x40)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x40)" (( "(") (binary_expression "puVar29 + -0x40" (identifier "puVar29") (+ "+") (number_literal "-0x40")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x44) = 0x18c19;" (assignment_expression "*(undefined4 *)(puVar29 + -0x44) = 0x18c19" (pointer_expression "*(undefined4 *)(puVar29 + -0x44)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x44)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x44)" (( "(") (binary_expression "puVar29 + -0x44" (identifier "puVar29") (+ "+") (number_literal "-0x44")) () ")")))) (= "=") (number_literal "0x18c19")) (; ";")) (expression_statement "FUN_0001a5c0();" (call_expression "FUN_0001a5c0()" (identifier "FUN_0001a5c0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*local_21c = (code)0x1;" (assignment_expression "*local_21c = (code)0x1" (pointer_expression "*local_21c" (* "*") (identifier "local_21c")) (= "=") (cast_expression "(code)0x1" (( "(") (type_descriptor "code" (type_identifier "code")) () ")") (number_literal "0x1"))) (; ";")) (} "}"))) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }\n            }" ({ "{") (if_statement "if ((char)local_1f0[6] == '\0') {\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }\n              else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" (if "if") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;\n                FUN_00014d30();\n              }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x18d28;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x18d28" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x18d28")) (; ";")) (expression_statement "FUN_00014d30();" (call_expression "FUN_00014d30()" (identifier "FUN_00014d30") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" (else "else") (compound_statement "{\n                *(char **)(puVar29 + -0x2c) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x30) = 4;\n                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -0x28) = 5;\n                *(char **)(puVar29 + -0x2c) = "created directory %s\n";\n                *(undefined4 *)(puVar29 + -0x30) = 0;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17214;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x28) = uVar11;\n                *(undefined4 *)(puVar29 + -0x2c) = uVar12;\n                *(undefined4 *)(puVar29 + -0x30) = 1;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17220;\n                __printf_chk();\n              }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x2c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x171ff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x171ff" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x171ff")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x2c) = "created directory %s\n";" (assignment_expression "*(char **)(puVar29 + -0x2c) = "created directory %s\n"" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (string_literal ""created directory %s\n"" (" """) (string_content "created directory %s") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17214;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17214" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x17214")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x2c) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x2c) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x2c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17220;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17220" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x17220")) (; ";")) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" (identifier "__printf_chk") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (} "}"))) (} "}")))) (expression_statement "puVar34 = puVar29 + -0x20;" (assignment_expression "puVar34 = puVar29 + -0x20" (identifier "puVar34") (= "=") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20"))) (; ";")) (expression_statement "bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);" (assignment_expression "bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7)" (identifier "bVar25") (= "=") (binary_expression "local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7)" (binary_expression "local_22c != (__ino_t *)0x0" (identifier "local_22c") (!= "!=") (cast_expression "(__ino_t *)0x0" (( "(") (type_descriptor "__ino_t *" (type_identifier "__ino_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (& "&") (pointer_expression "*(byte *)(local_1f0 + 7)" (* "*") (cast_expression "(byte *)(local_1f0 + 7)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 7)" (( "(") (binary_expression "local_1f0 + 7" (identifier "local_1f0") (+ "+") (number_literal "7")) () ")")))))) (; ";")) (expression_statement "uVar9 = (uint)bVar25;" (assignment_expression "uVar9 = (uint)bVar25" (identifier "uVar9") (= "=") (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25"))) (; ";")) (if_statement "if ((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }" (if "if") (parenthesized_expression "((bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_))" (( "(") (binary_expression "(bVar25 == 0) ||\n             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)" (parenthesized_expression "(bVar25 == 0)" (( "(") (binary_expression "bVar25 == 0" (identifier "bVar25") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)" (( "(") (binary_expression "local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_" (binary_expression "local_22c[1] == local_1b4._4_4_" (subscript_expression "local_22c[1]" (identifier "local_22c") ([ "[") (number_literal "1") (] "]")) (== "==") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (&& "&&") (binary_expression "(byte *)*local_22c == (byte *)local_1b4._0_4_" (cast_expression "(byte *)*local_22c" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_22c" (* "*") (identifier "local_22c"))) (== "==") (cast_expression "(byte *)local_1b4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))))) () ")"))) () ")")) (compound_statement "{\n            local_240 = &local_94;\n            piVar14 = local_1f0;\n            psVar26 = local_240;\n            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }\n            *(undefined4 *)(puVar29 + -0x2c) = 2;\n            *(char **)(puVar29 + -0x30) = local_200;\n            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;\n            pcVar20 = (char *)FUN_000212f0();\n            local_230 = pcVar20;\n            if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }\n            if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }\n            if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }\n            *(char **)(puVar29 + -0x30) = local_230;\n            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;\n            free(*(void **)(puVar29 + -0x30));\n            *local_21c = local_228._0_1_;\n          }" ({ "{") (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" (identifier "local_240") (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "psVar26 = local_240;" (assignment_expression "psVar26 = local_240" (identifier "psVar26") (= "=") (identifier "local_240")) (; ";")) (for_statement "for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }" (for "for") (( "(") (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "iVar10 = iVar10 + -1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + -1" (identifier "iVar10") (+ "+") (number_literal "-1"))) () ")") (compound_statement "{\n              *(int *)&psVar26->st_dev = *piVar14;\n              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;\n              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);\n            }" ({ "{") (expression_statement "*(int *)&psVar26->st_dev = *piVar14;" (assignment_expression "*(int *)&psVar26->st_dev = *piVar14" (pointer_expression "*(int *)&psVar26->st_dev" (* "*") (cast_expression "(int *)&psVar26->st_dev" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&psVar26->st_dev" (& "&") (field_expression "psVar26->st_dev" (identifier "psVar26") (-> "->") (field_identifier "st_dev"))))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "piVar14 = piVar14 + (uint)bVar40 * -2 + 1;" (assignment_expression "piVar14 = piVar14 + (uint)bVar40 * -2 + 1" (identifier "piVar14") (= "=") (binary_expression "piVar14 + (uint)bVar40 * -2 + 1" (binary_expression "piVar14 + (uint)bVar40 * -2" (identifier "piVar14") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);" (assignment_expression "psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" (identifier "psVar26") (= "=") (cast_expression "(stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)psVar26 + (uint)bVar40 * -8 + 4)" (( "(") (binary_expression "(int)psVar26 + (uint)bVar40 * -8 + 4" (binary_expression "(int)psVar26 + (uint)bVar40 * -8" (cast_expression "(int)psVar26" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "psVar26")) (+ "+") (binary_expression "(uint)bVar40 * -8" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-8"))) (+ "+") (number_literal "4")) () ")")))) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar29 + -0x2c) = 2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x2c) = 2" (pointer_expression "*(undefined4 *)(puVar29 + -0x2c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (number_literal "2")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_200" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1726d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1726d" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x1726d")) (; ";")) (expression_statement "pcVar20 = (char *)FUN_000212f0();" (assignment_expression "pcVar20 = (char *)FUN_000212f0()" (identifier "pcVar20") (= "=") (cast_expression "(char *)FUN_000212f0()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000212f0()" (identifier "FUN_000212f0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_230 = pcVar20;" (assignment_expression "local_230 = pcVar20" (identifier "local_230") (= "=") (identifier "pcVar20")) (; ";")) (if_statement "if (pcVar20 == (char *)0x0) {\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }" (if "if") (parenthesized_expression "(pcVar20 == (char *)0x0)" (( "(") (binary_expression "pcVar20 == (char *)0x0" (identifier "pcVar20") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0x2c) = local_200;\n              *(undefined4 *)(puVar29 + -0x30) = 4;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19153;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -0x28) = 5;\n              *(char **)(puVar29 + -0x2c) = "cannot access %s";\n              *(undefined4 *)(puVar29 + -0x30) = 0;\n              *(undefined4 *)(puVar29 + -0x34) = 0x19168;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x34) = uVar11;\n              *(undefined4 *)(puVar29 + -0x38) = uVar12;\n              *(int *)(puVar29 + -0x3c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x40) = 0;\n                    \n              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;\n              error();\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0x2c) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x2c) = local_200" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19153;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19153" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x19153")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x2c) = "cannot access %s";" (assignment_expression "*(char **)(puVar29 + -0x2c) = "cannot access %s"" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (string_literal ""cannot access %s"" (" """) (string_content "cannot access %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19168;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19168" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x19168")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1916f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1916f" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x1916f")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x38) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x38) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x38)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x38)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x38)" (( "(") (binary_expression "puVar29 + -0x38" (identifier "puVar29") (+ "+") (number_literal "-0x38")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x3c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x3c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x3c)" (* "*") (cast_expression "(int *)(puVar29 + -0x3c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x3c)" (( "(") (binary_expression "puVar29 + -0x3c" (identifier "puVar29") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x40) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x40) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x40)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x40)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x40)" (( "(") (binary_expression "puVar29 + -0x40" (identifier "puVar29") (+ "+") (number_literal "-0x40")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x44) = &UNK_0001917c;" (assignment_expression "*(undefined **)(puVar29 + -0x44) = &UNK_0001917c" (pointer_expression "*(undefined **)(puVar29 + -0x44)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x44)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x44)" (( "(") (binary_expression "puVar29 + -0x44" (identifier "puVar29") (+ "+") (number_literal "-0x44")) () ")")))) (= "=") (pointer_expression "&UNK_0001917c" (& "&") (identifier "UNK_0001917c"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_1f0[1] == 3) {\n              local_94.st_dev._4_4_ = 2;\n            }" (if "if") (parenthesized_expression "(local_1f0[1] == 3)" (( "(") (binary_expression "local_1f0[1] == 3" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "3")) () ")")) (compound_statement "{\n              local_94.st_dev._4_4_ = 2;\n            }" ({ "{") (expression_statement "local_94.st_dev._4_4_ = 2;" (assignment_expression "local_94.st_dev._4_4_ = 2" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_")) (= "=") (number_literal "2")) (; ";")) (} "}"))) (if_statement "if (*pcVar20 == '\0') {\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }\n            else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" (if "if") (parenthesized_expression "(*pcVar20 == '\0')" (( "(") (binary_expression "*pcVar20 == '\0'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              uVar9 = 1;\n            }" ({ "{") (expression_statement "local_228 = (int *)((uint)local_228._1_3_ << 8);" (assignment_expression "local_228 = (int *)((uint)local_228._1_3_ << 8)" (identifier "local_228") (= "=") (cast_expression "(int *)((uint)local_228._1_3_ << 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_228._1_3_ << 8)" (( "(") (binary_expression "(uint)local_228._1_3_ << 8" (cast_expression "(uint)local_228._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_228._1_3_" (identifier "local_228") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" (identifier "uVar9") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" (else "else") (compound_statement "{\n              local_20c = local_1b4;\n              local_228 = (int *)((uint)local_228._1_3_ << 8);\n              local_234 = (stat64 *)local_f4;\n              local_22c = &local_1d4;\n              local_224 = CONCAT31(local_224._1_3_,1);\n              do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');\n              uVar9 = local_224 & 0xff;\n            }" ({ "{") (expression_statement "local_20c = local_1b4;" (assignment_expression "local_20c = local_1b4" (identifier "local_20c") (= "=") (identifier "local_1b4")) (; ";")) (expression_statement "local_228 = (int *)((uint)local_228._1_3_ << 8);" (assignment_expression "local_228 = (int *)((uint)local_228._1_3_ << 8)" (identifier "local_228") (= "=") (cast_expression "(int *)((uint)local_228._1_3_ << 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_228._1_3_ << 8)" (( "(") (binary_expression "(uint)local_228._1_3_ << 8" (cast_expression "(uint)local_228._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_228._1_3_" (identifier "local_228") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (expression_statement "local_234 = (stat64 *)local_f4;" (assignment_expression "local_234 = (stat64 *)local_f4" (identifier "local_234") (= "=") (cast_expression "(stat64 *)local_f4" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_f4"))) (; ";")) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" (identifier "local_22c") (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "local_224 = CONCAT31(local_224._1_3_,1);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,1)" (identifier "local_224") (= "=") (call_expression "CONCAT31(local_224._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_224._1_3_,1)" (( "(") (field_expression "local_224._1_3_" (identifier "local_224") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")")))) (; ";")) (do_statement "do {\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              } while (*pcVar20 != '\0');" (do "do") (compound_statement "{\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_200;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;\n                ppbVar17 = (byte **)FUN_0001d480();\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(char **)(puVar29 + -0x2c) = pcVar20;\n                *(char **)(puVar29 + -0x30) = local_1f8;\n                local_214 = ppbVar17;\n                *(undefined4 *)(puVar29 + -0x34) = 0x17336;\n                uVar11 = FUN_0001d480();\n                cVar1 = *local_21c;\n                *(undefined4 *)(puVar29 + -0x28) = 0;\n                *(__ino_t **)(puVar29 + -0x2c) = local_22c;\n                *(stat64 **)(puVar29 + -0x30) = local_234;\n                *(undefined4 *)(puVar29 + -0x34) = 0;\n                *(stat64 **)(puVar29 + -0x38) = local_240;\n                *(stat64 **)(puVar29 + -0x3c) = local_238;\n                *(byte **)(puVar29 + -0x40) = local_20c;\n                local_f4[0] = (byte)cVar1;\n                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;\n                bVar40 = FUN_00015de0();\n                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);\n                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);\n                *(undefined4 *)(puVar29 + -0x30) = uVar11;\n                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;\n                free(*(void **)(puVar29 + -0x30));\n                *(byte ***)(puVar29 + -0x30) = local_214;\n                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;\n                free(*(void **)(puVar29 + -0x30));\n                if ((byte)local_1d4 != '\0') break;\n                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);\n                *(char **)(puVar29 + -0x30) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;\n                sVar16 = strlen(*(char **)(puVar29 + -0x30));\n                pcVar20 = pcVar20 + sVar16 + 1;\n              }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x2c) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x2c) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_200" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1731f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1731f" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x1731f")) (; ";")) (expression_statement "ppbVar17 = (byte **)FUN_0001d480();" (assignment_expression "ppbVar17 = (byte **)FUN_0001d480()" (identifier "ppbVar17") (= "=") (cast_expression "(byte **)FUN_0001d480()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0001d480()" (identifier "FUN_0001d480") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x2c) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x2c) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x2c)" (* "*") (cast_expression "(char **)(puVar29 + -0x2c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "local_214 = ppbVar17;" (assignment_expression "local_214 = ppbVar17" (identifier "local_214") (= "=") (identifier "ppbVar17")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17336;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17336" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x17336")) (; ";")) (expression_statement "uVar11 = FUN_0001d480();" (assignment_expression "uVar11 = FUN_0001d480()" (identifier "uVar11") (= "=") (call_expression "FUN_0001d480()" (identifier "FUN_0001d480") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "cVar1 = *local_21c;" (assignment_expression "cVar1 = *local_21c" (identifier "cVar1") (= "=") (pointer_expression "*local_21c" (* "*") (identifier "local_21c"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(__ino_t **)(puVar29 + -0x2c) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x2c) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x2c)" (* "*") (cast_expression "(__ino_t **)(puVar29 + -0x2c)" (( "(") (type_descriptor "__ino_t **" (type_identifier "__ino_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_22c")) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -0x30) = local_234;" (assignment_expression "*(stat64 **)(puVar29 + -0x30) = local_234" (pointer_expression "*(stat64 **)(puVar29 + -0x30)" (* "*") (cast_expression "(stat64 **)(puVar29 + -0x30)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_234")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -0x38) = local_240;" (assignment_expression "*(stat64 **)(puVar29 + -0x38) = local_240" (pointer_expression "*(stat64 **)(puVar29 + -0x38)" (* "*") (cast_expression "(stat64 **)(puVar29 + -0x38)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x38)" (( "(") (binary_expression "puVar29 + -0x38" (identifier "puVar29") (+ "+") (number_literal "-0x38")) () ")")))) (= "=") (identifier "local_240")) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -0x3c) = local_238;" (assignment_expression "*(stat64 **)(puVar29 + -0x3c) = local_238" (pointer_expression "*(stat64 **)(puVar29 + -0x3c)" (* "*") (cast_expression "(stat64 **)(puVar29 + -0x3c)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x3c)" (( "(") (binary_expression "puVar29 + -0x3c" (identifier "puVar29") (+ "+") (number_literal "-0x3c")) () ")")))) (= "=") (identifier "local_238")) (; ";")) (expression_statement "*(byte **)(puVar29 + -0x40) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0x40) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0x40)" (* "*") (cast_expression "(byte **)(puVar29 + -0x40)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x40)" (( "(") (binary_expression "puVar29 + -0x40" (identifier "puVar29") (+ "+") (number_literal "-0x40")) () ")")))) (= "=") (identifier "local_20c")) (; ";")) (expression_statement "local_f4[0] = (byte)cVar1;" (assignment_expression "local_f4[0] = (byte)cVar1" (subscript_expression "local_f4[0]" (identifier "local_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(byte)cVar1" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x44) = 0x1737f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x44) = 0x1737f" (pointer_expression "*(undefined4 *)(puVar29 + -0x44)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x44)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x44)" (( "(") (binary_expression "puVar29 + -0x44" (identifier "puVar29") (+ "+") (number_literal "-0x44")) () ")")))) (= "=") (number_literal "0x1737f")) (; ";")) (expression_statement "bVar40 = FUN_00015de0();" (assignment_expression "bVar40 = FUN_00015de0()" (identifier "bVar40") (= "=") (call_expression "FUN_00015de0()" (identifier "FUN_00015de0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40)" (identifier "local_224") (= "=") (call_expression "CONCAT31(local_224._1_3_,(byte)local_224 & bVar40)" (identifier "CONCAT31") (argument_list "(local_224._1_3_,(byte)local_224 & bVar40)" (( "(") (field_expression "local_224._1_3_" (identifier "local_224") (. ".") (field_identifier "_1_3_")) (, ",") (binary_expression "(byte)local_224 & bVar40" (cast_expression "(byte)local_224" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_224")) (& "&") (identifier "bVar40")) () ")")))) (; ";")) (expression_statement "*local_220 = (code)((byte)*local_220 | (byte)local_1d4);" (assignment_expression "*local_220 = (code)((byte)*local_220 | (byte)local_1d4)" (pointer_expression "*local_220" (* "*") (identifier "local_220")) (= "=") (call_expression "(code)((byte)*local_220 | (byte)local_1d4)" (parenthesized_expression "(code)" (( "(") (identifier "code") () ")")) (argument_list "((byte)*local_220 | (byte)local_1d4)" (( "(") (binary_expression "(byte)*local_220 | (byte)local_1d4" (binary_expression "(byte)*local_220" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (* "*") (identifier "local_220")) (| "|") (cast_expression "(byte)local_1d4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1d4"))) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x30) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x30) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x30)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x1739d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x1739d" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x1739d")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x30))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x30)" (* "*") (cast_expression "(void **)(puVar29 + -0x30)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) () ")"))) (; ";")) (expression_statement "*(byte ***)(puVar29 + -0x30) = local_214;" (assignment_expression "*(byte ***)(puVar29 + -0x30) = local_214" (pointer_expression "*(byte ***)(puVar29 + -0x30)" (* "*") (cast_expression "(byte ***)(puVar29 + -0x30)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_214")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x173a9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x173a9" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x173a9")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x30))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x30)" (* "*") (cast_expression "(void **)(puVar29 + -0x30)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) () ")"))) (; ";")) (if_statement "if ((byte)local_1d4 != '\0') break;" (if "if") (parenthesized_expression "((byte)local_1d4 != '\0')" (( "(") (binary_expression "(byte)local_1d4 != '\0'" (cast_expression "(byte)local_1d4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1d4")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);" (assignment_expression "local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" (identifier "local_228") (= "=") (cast_expression "(int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" (identifier "CONCAT31") (argument_list "(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0])" (( "(") (field_expression "local_228._1_3_" (identifier "local_228") (. ".") (field_identifier "_1_3_")) (, ",") (binary_expression "(byte)local_228._0_1_ | local_f4[0]" (cast_expression "(byte)local_228._0_1_" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (field_expression "local_228._0_1_" (identifier "local_228") (. ".") (field_identifier "_0_1_"))) (| "|") (subscript_expression "local_f4[0]" (identifier "local_f4") ([ "[") (number_literal "0") (] "]"))) () ")"))))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x30) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x30) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x172fe;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x172fe" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x172fe")) (; ";")) (expression_statement "sVar16 = strlen(*(char **)(puVar29 + -0x30));" (assignment_expression "sVar16 = strlen(*(char **)(puVar29 + -0x30))" (identifier "sVar16") (= "=") (call_expression "strlen(*(char **)(puVar29 + -0x30))" (identifier "strlen") (argument_list "(*(char **)(puVar29 + -0x30))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) () ")")))) (; ";")) (expression_statement "pcVar20 = pcVar20 + sVar16 + 1;" (assignment_expression "pcVar20 = pcVar20 + sVar16 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + sVar16 + 1" (binary_expression "pcVar20 + sVar16" (identifier "pcVar20") (+ "+") (identifier "sVar16")) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*pcVar20 != '\0')" (( "(") (binary_expression "*pcVar20 != '\0'" (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (; ";")) (expression_statement "uVar9 = local_224 & 0xff;" (assignment_expression "uVar9 = local_224 & 0xff" (identifier "uVar9") (= "=") (binary_expression "local_224 & 0xff" (identifier "local_224") (& "&") (number_literal "0xff"))) (; ";")) (} "}")))) (expression_statement "*(char **)(puVar29 + -0x30) = local_230;" (assignment_expression "*(char **)(puVar29 + -0x30) = local_230" (pointer_expression "*(char **)(puVar29 + -0x30)" (* "*") (cast_expression "(char **)(puVar29 + -0x30)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_230")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x173ce;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x173ce" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x173ce")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x30));" (call_expression "free(*(void **)(puVar29 + -0x30))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x30))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x30)" (* "*") (cast_expression "(void **)(puVar29 + -0x30)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) () ")"))) (; ";")) (expression_statement "*local_21c = local_228._0_1_;" (assignment_expression "*local_21c = local_228._0_1_" (pointer_expression "*local_21c" (* "*") (identifier "local_21c")) (= "=") (field_expression "local_228._0_1_" (identifier "local_228") (. ".") (field_identifier "_0_1_"))) (; ";")) (} "}"))) (if_statement "if ((byte)local_1fc != '\0') {\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }" (if "if") (parenthesized_expression "((byte)local_1fc != '\0')" (( "(") (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            bVar25 = 0;\n            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);\n            bVar40 = 0;\n            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);\nLAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }\n            uVar9 = local_224 & 0xff;\n            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);\n            puVar29 = puVar34;\n            goto LAB_00016794;\n          }" ({ "{") (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_208._1_3_ << 8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_208._1_3_ << 8)" (( "(") (binary_expression "(uint)local_208._1_3_ << 8" (cast_expression "(uint)local_208._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_208._1_3_" (identifier "local_208") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (expression_statement "bVar40 = 0;" (assignment_expression "bVar40 = 0" (identifier "bVar40") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(char)uVar9);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(char)uVar9)" (identifier "local_224") (= "=") (call_expression "CONCAT31(local_224._1_3_,(char)uVar9)" (identifier "CONCAT31") (argument_list "(local_224._1_3_,(char)uVar9)" (( "(") (field_expression "local_224._1_3_" (identifier "local_224") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)uVar9" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar9")) () ")")))) (; ";")) (labeled_statement "LAB_00016722:\n            if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" (statement_identifier "LAB_00016722") (: ":") (if_statement "if (local_1f0[0xf] != 0) {\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" (if "if") (parenthesized_expression "(local_1f0[0xf] != 0)" (( "(") (binary_expression "local_1f0[0xf] != 0" (subscript_expression "local_1f0[0xf]" (identifier "local_1f0") ([ "[") (number_literal "0xf") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);\n              *(stat64 **)(puVar34 + -8) = &local_94;\n              *(char **)(puVar34 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar34 + -0x10) = 3;\n              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;\n              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));\n              piVar14 = local_1f0;\n              bVar40 = (byte)local_1fc;\n              if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }\n            }" ({ "{") (expression_statement "local_1fc = CONCAT31(local_1fc._1_3_,bVar40);" (assignment_expression "local_1fc = CONCAT31(local_1fc._1_3_,bVar40)" (identifier "local_1fc") (= "=") (call_expression "CONCAT31(local_1fc._1_3_,bVar40)" (identifier "CONCAT31") (argument_list "(local_1fc._1_3_,bVar40)" (( "(") (field_expression "local_1fc._1_3_" (identifier "local_1fc") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar40") () ")")))) (; ";")) (expression_statement "*(stat64 **)(puVar34 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar34 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar34 + -8)" (* "*") (cast_expression "(stat64 **)(puVar34 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar34 + -8)" (( "(") (binary_expression "puVar34 + -8" (identifier "puVar34") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(char **)(puVar34 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar34 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar34 + -0xc)" (* "*") (cast_expression "(char **)(puVar34 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar34 + -0xc)" (( "(") (binary_expression "puVar34 + -0xc" (identifier "puVar34") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar34 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar34 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar34 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar34 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar34 + -0x10)" (( "(") (binary_expression "puVar34 + -0x10" (identifier "puVar34") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar34 + -0x14) = 0x1674c;" (assignment_expression "*(undefined4 *)(puVar34 + -0x14) = 0x1674c" (pointer_expression "*(undefined4 *)(puVar34 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar34 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar34 + -0x14)" (( "(") (binary_expression "puVar34 + -0x14" (identifier "puVar34") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1674c")) (; ";")) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" (identifier "iVar10") (= "=") (call_expression "__lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" (identifier "__lxstat64") (argument_list "(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),\n                                  *(stat64 **)(puVar34 + -8))" (( "(") (pointer_expression "*(int *)(puVar34 + -0x10)" (* "*") (cast_expression "(int *)(puVar34 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar34 + -0x10)" (( "(") (binary_expression "puVar34 + -0x10" (identifier "puVar34") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar34 + -0xc)" (* "*") (cast_expression "(char **)(puVar34 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar34 + -0xc)" (( "(") (binary_expression "puVar34 + -0xc" (identifier "puVar34") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar34 + -8)" (* "*") (cast_expression "(stat64 **)(puVar34 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar34 + -8)" (( "(") (binary_expression "puVar34 + -8" (identifier "puVar34") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "bVar40 = (byte)local_1fc;" (assignment_expression "bVar40 = (byte)local_1fc" (identifier "bVar40") (= "=") (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc"))) (; ";")) (if_statement "if (iVar10 == 0) {\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                *(stat64 **)(puVar34 + -8) = &local_94;\n                *(char **)(puVar34 + -0xc) = local_1f8;\n                *(int *)(puVar34 + -0x10) = piVar14[0xf];\n                *(undefined4 *)(puVar34 + -0x14) = 0x16772;\n                FUN_0001d1d0();\n                bVar40 = (byte)local_1fc;\n              }" ({ "{") (expression_statement "*(stat64 **)(puVar34 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar34 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar34 + -8)" (* "*") (cast_expression "(stat64 **)(puVar34 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar34 + -8)" (( "(") (binary_expression "puVar34 + -8" (identifier "puVar34") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(char **)(puVar34 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar34 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar34 + -0xc)" (* "*") (cast_expression "(char **)(puVar34 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar34 + -0xc)" (( "(") (binary_expression "puVar34 + -0xc" (identifier "puVar34") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(int *)(puVar34 + -0x10) = piVar14[0xf];" (assignment_expression "*(int *)(puVar34 + -0x10) = piVar14[0xf]" (pointer_expression "*(int *)(puVar34 + -0x10)" (* "*") (cast_expression "(int *)(puVar34 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar34 + -0x10)" (( "(") (binary_expression "puVar34 + -0x10" (identifier "puVar34") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (subscript_expression "piVar14[0xf]" (identifier "piVar14") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (expression_statement "*(undefined4 *)(puVar34 + -0x14) = 0x16772;" (assignment_expression "*(undefined4 *)(puVar34 + -0x14) = 0x16772" (pointer_expression "*(undefined4 *)(puVar34 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar34 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar34 + -0x14)" (( "(") (binary_expression "puVar34 + -0x14" (identifier "puVar34") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16772")) (; ";")) (expression_statement "FUN_0001d1d0();" (call_expression "FUN_0001d1d0()" (identifier "FUN_0001d1d0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "bVar40 = (byte)local_1fc;" (assignment_expression "bVar40 = (byte)local_1fc" (identifier "bVar40") (= "=") (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "uVar9 = local_224 & 0xff;" (assignment_expression "uVar9 = local_224 & 0xff" (identifier "uVar9") (= "=") (binary_expression "local_224 & 0xff" (identifier "local_224") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c)" (identifier "local_224") (= "=") (call_expression "CONCAT31(local_224._1_3_,(undefined1)local_24c)" (identifier "CONCAT31") (argument_list "(local_224._1_3_,(undefined1)local_24c)" (( "(") (field_expression "local_224._1_3_" (identifier "local_224") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(undefined1)local_24c" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_24c")) () ")")))) (; ";")) (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" (identifier "puVar29") (= "=") (identifier "puVar34")) (; ";")) (goto_statement "goto LAB_00016794;" (goto "goto") (statement_identifier "LAB_00016794") (; ";")) (} "}"))) (expression_statement "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208._1_3_ << 8)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_208._1_3_ << 8)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_208._1_3_ << 8)" (( "(") (binary_expression "(uint)local_208._1_3_ << 8" (cast_expression "(uint)local_208._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_208._1_3_" (identifier "local_208") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (expression_statement "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);" (assignment_expression "local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c)" (identifier "local_224") (= "=") (call_expression "CONCAT31(local_224._1_3_,(undefined1)local_24c)" (identifier "CONCAT31") (argument_list "(local_224._1_3_,(undefined1)local_24c)" (( "(") (field_expression "local_224._1_3_" (identifier "local_224") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(undefined1)local_24c" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_24c")) () ")")))) (; ";")) (expression_statement "puVar29 = puVar29 + -0x20;" (assignment_expression "puVar29 = puVar29 + -0x20" (identifier "puVar29") (= "=") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20"))) (; ";")) (} "}")) (else_clause "else {\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" (else "else") (compound_statement "{\nLAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);\n          puVar34 = puVar29;\n          if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }\n          if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }\n          if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }\n          bVar25 = 0;\n          if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }\nLAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;\n          if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }\n          uVar9 = 1;\n          if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }\nLAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;\n        }" ({ "{") (labeled_statement "LAB_0001664e:\n          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);" (statement_identifier "LAB_0001664e") (: ":") (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_208._1_3_,(char)local_1f0[0xb])" (identifier "CONCAT31") (argument_list "(local_208._1_3_,(char)local_1f0[0xb])" (( "(") (field_expression "local_208._1_3_" (identifier "local_208") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)local_1f0[0xb]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[0xb]" (identifier "local_1f0") ([ "[") (number_literal "0xb") (] "]"))) () ")"))))) (; ";"))) (expression_statement "puVar34 = puVar29;" (assignment_expression "puVar34 = puVar29" (identifier "puVar34") (= "=") (identifier "puVar29")) (; ";")) (if_statement "if ((char)local_1f0[0xb] != '\0') {\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }" (if "if") (parenthesized_expression "((char)local_1f0[0xb] != '\0')" (( "(") (binary_expression "(char)local_1f0[0xb] != '\0'" (cast_expression "(char)local_1f0[0xb]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[0xb]" (identifier "local_1f0") ([ "[") (number_literal "0xb") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;\n            iVar10 = FUN_0001ade0();\n            bVar25 = 0;\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }\n            goto LAB_000166da;\n          }" ({ "{") (if_statement "if (*local_200 != '/') {\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }" (if "if") (parenthesized_expression "(*local_200 != '/')" (( "(") (binary_expression "*local_200 != '/'" (pointer_expression "*local_200" (* "*") (identifier "local_200")) (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (compound_statement "{\n              uVar38 = puVar29 < (undefined1 *)0xc;\n              uVar39 = puVar29 == (undefined1 *)0xc;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;\n              pbVar13 = (byte *)FUN_0001cf20();\n              iVar10 = 2;\n              pbVar35 = &DAT_0002c142;\n              pbVar36 = pbVar13;\n              do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);\n              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }\n              *(byte **)(puVar29 + -0x10) = pbVar13;\n              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;\n              free(*(void **)(puVar29 + -0x10));\n            }" ({ "{") (expression_statement "uVar38 = puVar29 < (undefined1 *)0xc;" (assignment_expression "uVar38 = puVar29 < (undefined1 *)0xc" (identifier "uVar38") (= "=") (binary_expression "puVar29 < (undefined1 *)0xc" (identifier "puVar29") (< "<") (cast_expression "(undefined1 *)0xc" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xc")))) (; ";")) (expression_statement "uVar39 = puVar29 == (undefined1 *)0xc;" (assignment_expression "uVar39 = puVar29 == (undefined1 *)0xc" (identifier "uVar39") (= "=") (binary_expression "puVar29 == (undefined1 *)0xc" (identifier "puVar29") (== "==") (cast_expression "(undefined1 *)0xc" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xc")))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1667f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1667f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1667f")) (; ";")) (expression_statement "pbVar13 = (byte *)FUN_0001cf20();" (assignment_expression "pbVar13 = (byte *)FUN_0001cf20()" (identifier "pbVar13") (= "=") (cast_expression "(byte *)FUN_0001cf20()" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001cf20()" (identifier "FUN_0001cf20") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" (identifier "iVar10") (= "=") (number_literal "2")) (; ";")) (expression_statement "pbVar35 = &DAT_0002c142;" (assignment_expression "pbVar35 = &DAT_0002c142" (identifier "pbVar35") (= "=") (pointer_expression "&DAT_0002c142" (& "&") (identifier "DAT_0002c142"))) (; ";")) (expression_statement "pbVar36 = pbVar13;" (assignment_expression "pbVar36 = pbVar13" (identifier "pbVar36") (= "=") (identifier "pbVar13")) (; ";")) (do_statement "do {\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              } while ((bool)uVar39);" (do "do") (compound_statement "{\n                if (iVar10 == 0) break;\n                iVar10 = iVar10 + -1;\n                uVar38 = *pbVar35 < *pbVar36;\n                uVar39 = *pbVar35 == *pbVar36;\n                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;\n                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;\n              }" ({ "{") (if_statement "if (iVar10 == 0) break;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar10 = iVar10 + -1;" (assignment_expression "iVar10 = iVar10 + -1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + -1" (identifier "iVar10") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "uVar38 = *pbVar35 < *pbVar36;" (assignment_expression "uVar38 = *pbVar35 < *pbVar36" (identifier "uVar38") (= "=") (binary_expression "*pbVar35 < *pbVar36" (pointer_expression "*pbVar35" (* "*") (identifier "pbVar35")) (< "<") (pointer_expression "*pbVar36" (* "*") (identifier "pbVar36")))) (; ";")) (expression_statement "uVar39 = *pbVar35 == *pbVar36;" (assignment_expression "uVar39 = *pbVar35 == *pbVar36" (identifier "uVar39") (= "=") (binary_expression "*pbVar35 == *pbVar36" (pointer_expression "*pbVar35" (* "*") (identifier "pbVar35")) (== "==") (pointer_expression "*pbVar36" (* "*") (identifier "pbVar36")))) (; ";")) (expression_statement "pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;" (assignment_expression "pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1" (identifier "pbVar35") (= "=") (binary_expression "pbVar35 + (uint)bVar40 * -2 + 1" (binary_expression "pbVar35 + (uint)bVar40 * -2" (identifier "pbVar35") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;" (assignment_expression "pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1" (identifier "pbVar36") (= "=") (binary_expression "pbVar36 + (uint)bVar40 * -2 + 1" (binary_expression "pbVar36 + (uint)bVar40 * -2" (identifier "pbVar36") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((bool)uVar39)" (( "(") (cast_expression "(bool)uVar39" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar39")) () ")")) (; ";")) (if_statement "if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }" (if "if") (parenthesized_expression "((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38)" (( "(") (binary_expression "(!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38" (parenthesized_expression "(!(bool)uVar38 && !(bool)uVar39)" (( "(") (binary_expression "!(bool)uVar38 && !(bool)uVar39" (unary_expression "!(bool)uVar38" (! "!") (cast_expression "(bool)uVar38" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar38"))) (&& "&&") (unary_expression "!(bool)uVar39" (! "!") (cast_expression "(bool)uVar39" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar39")))) () ")")) (!= "!=") (cast_expression "(bool)uVar38" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar38"))) () ")")) (compound_statement "{\n                local_20c = pbVar13;\n                *(undefined1 **)(puVar29 + -8) = local_f4;\n                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;\n                *(undefined4 *)(puVar29 + -0x10) = 3;\n                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;\n                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));\n                pbVar13 = local_20c;\n                if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }\n              }" ({ "{") (expression_statement "local_20c = pbVar13;" (assignment_expression "local_20c = pbVar13" (identifier "local_20c") (= "=") (identifier "pbVar13")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_f4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_f4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_f4")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;" (assignment_expression "*(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142" (pointer_expression "*(undefined1 **)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&DAT_0002c142" (& "&") (identifier "DAT_0002c142"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17ae0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17ae0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17ae0")) (; ";")) (expression_statement "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" (identifier "iVar10") (= "=") (call_expression "__xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" (identifier "__xstat64") (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                   *(stat64 **)(puVar29 + -8))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" (identifier "pbVar13") (= "=") (identifier "local_20c")) (; ";")) (if_statement "if (iVar10 == 0) {\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(byte **)(puVar29 + -0xc) = pbVar13;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;\n                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  pbVar13 = local_20c;\n                  if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }\n                }" ({ "{") (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(byte **)(puVar29 + -0xc) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0xc) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0xc)" (* "*") (cast_expression "(byte **)(puVar29 + -0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pbVar13")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17b03")) (; ";")) (expression_statement "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" (identifier "iVar10") (= "=") (call_expression "__xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" (identifier "__xstat64") (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" (identifier "pbVar13") (= "=") (identifier "local_20c")) (; ";")) (if_statement "if ((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }" (if "if") (parenthesized_expression "((iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev))))" (( "(") (binary_expression "(iVar10 == 0) &&\n                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))" (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))" (( "(") (parenthesized_expression "((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev))" (( "(") (binary_expression "(local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||\n                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)" (parenthesized_expression "(local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_))" (( "(") (binary_expression "local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||\n                       (local_f4._4_4_ != local_94.st_dev._4_4_)" (binary_expression "local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino" (binary_expression "local_98 != local_94.st_ino._4_4_" (identifier "local_98") (!= "!=") (field_expression "local_94.st_ino._4_4_" (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino")) (. ".") (field_identifier "_4_4_"))) (|| "||") (binary_expression "local_9c != (int)local_94.st_ino" (identifier "local_9c") (!= "!=") (cast_expression "(int)local_94.st_ino" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_94.st_ino" (identifier "local_94") (. ".") (field_identifier "st_ino"))))) (|| "||") (parenthesized_expression "(local_f4._4_4_ != local_94.st_dev._4_4_)" (( "(") (binary_expression "local_f4._4_4_ != local_94.st_dev._4_4_" (field_expression "local_f4._4_4_" (identifier "local_f4") (. ".") (field_identifier "_4_4_")) (!= "!=") (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)" (( "(") (binary_expression "(byte *)local_f4._0_4_ != (byte *)local_94.st_dev" (cast_expression "(byte *)local_f4._0_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_f4._0_4_" (identifier "local_f4") (. ".") (field_identifier "_0_4_"))) (!= "!=") (cast_expression "(byte *)local_94.st_dev" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n                    *(byte **)(puVar29 + -0x10) = local_20c;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;\n                    free(*(void **)(puVar29 + -0x10));\n                    *(char **)(puVar29 + -8) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0xc) = 3;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;\n                    uVar11 = FUN_00020700();\n                    *(undefined4 *)(puVar29 + -8) = 5;\n                    pcVar20 = "%s: can make relative symbolic links only in current directory";\nLAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;\n                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;\n                    uVar12 = dcgettext();\n                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                    *(undefined4 *)(puVar29 + -0x1c) = 0;\n                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;\n                    error();\n                  }" ({ "{") (expression_statement "*(byte **)(puVar29 + -0x10) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0x10) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0x10)" (* "*") (cast_expression "(byte **)(puVar29 + -0x10)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_20c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b37;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b37" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17b37")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b49;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b49" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17b49")) (; ";")) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" (identifier "uVar11") (= "=") (call_expression "FUN_00020700()" (identifier "FUN_00020700") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "%s: can make relative symbolic links only in current directory";" (assignment_expression "pcVar20 = "%s: can make relative symbolic links only in current directory"" (identifier "pcVar20") (= "=") (string_literal ""%s: can make relative symbolic links only in current directory"" (" """) (string_content "%s: can make relative symbolic links only in current directory") (" """))) (; ";")) (labeled_statement "LAB_00016e8b:\n                    *(char **)(puVar29 + -0xc) = pcVar20;" (statement_identifier "LAB_00016e8b") (: ":") (expression_statement "*(char **)(puVar29 + -0xc) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0xc) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pcVar20")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16e93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16e93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16e93")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00016e9e" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00016e9e" (& "&") (identifier "UNK_00016e9e"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (} "}"))) (expression_statement "*(byte **)(puVar29 + -0x10) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x10) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x10)" (* "*") (cast_expression "(byte **)(puVar29 + -0x10)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pbVar13")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x166ac;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x166ac" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x166ac")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (} "}"))) (expression_statement "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);" (assignment_expression "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16)" (pointer_expression "*(uint *)(puVar29 + -4)" (* "*") (cast_expression "(uint *)(puVar29 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (binary_expression "(uint)*(byte *)((int)local_1f0 + 0x16)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x16)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x16)" (( "(") (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x16")) () ")"))))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0xffffff9c")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x166cf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x166cf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x166cf")) (; ";")) (expression_statement "iVar10 = FUN_0001ade0();" (assignment_expression "iVar10 = FUN_0001ade0()" (identifier "iVar10") (= "=") (call_expression "FUN_0001ade0()" (identifier "FUN_0001ade0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar10 < 0) {\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -8) = local_200;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 1;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;\n              uVar11 = FUN_000203c0();\n              *(char **)(puVar29 + -8) = local_1f8;\n              *(undefined4 *)(puVar29 + -0xc) = 4;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              local_1f4 = (char *)uVar11;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;\n              uVar11 = FUN_000203c0();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;\n              piVar14 = __errno_location();\n              *(char **)(puVar29 + -0x10) = local_1f4;\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;\n              error();\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1898c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1898c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1898c")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1f4 = (char *)uVar11;" (assignment_expression "local_1f4 = (char *)uVar11" (identifier "local_1f4") (= "=") (cast_expression "(char *)uVar11" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar11"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189a4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189a4" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x189a4")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot create symbolic link %s to %s"" (" """) (string_content "cannot create symbolic link %s to %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189b9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189b9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x189b9")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x189c0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x189c0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x189c0")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f4;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f4" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000189d4;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000189d4" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_000189d4" (& "&") (identifier "UNK_000189d4"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000166da;" (goto "goto") (statement_identifier "LAB_000166da") (; ";")) (} "}"))) (if_statement "if (*(char *)((int)local_1f0 + 0x17) != '\0') {\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x17) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            *(byte **)(puVar29 + -0xc) = local_20c;\n            bVar25 = 0;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18382;\n            bVar40 = FUN_00014f10();\njoined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;\nLAB_00016fad:\n            puVar29 = puVar34;\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }\n            if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }\n            goto LAB_00016fcb;\n          }" ({ "{") (expression_statement "*(byte **)(puVar29 + -0xc) = local_20c;" (assignment_expression "*(byte **)(puVar29 + -0xc) = local_20c" (pointer_expression "*(byte **)(puVar29 + -0xc)" (* "*") (cast_expression "(byte **)(puVar29 + -0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_20c")) (; ";")) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18382;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18382" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18382")) (; ";")) (expression_statement "bVar40 = FUN_00014f10();" (assignment_expression "bVar40 = FUN_00014f10()" (identifier "bVar40") (= "=") (call_expression "FUN_00014f10()" (identifier "FUN_00014f10") (argument_list "()" (( "(") () ")")))) (; ";")) (labeled_statement "joined_r0x00018387:\n            if (bVar40 != 0) goto LAB_000166da;" (statement_identifier "joined_r0x00018387") (: ":") (if_statement "if (bVar40 != 0) goto LAB_000166da;" (if "if") (parenthesized_expression "(bVar40 != 0)" (( "(") (binary_expression "bVar40 != 0" (identifier "bVar40") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000166da;" (goto "goto") (statement_identifier "LAB_000166da") (; ";")))) (labeled_statement "LAB_00016fad:\n            puVar29 = puVar34;" (statement_identifier "LAB_00016fad") (: ":") (expression_statement "puVar29 = puVar34;" (assignment_expression "puVar29 = puVar34" (identifier "puVar29") (= "=") (identifier "puVar34")) (; ";"))) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;\n              FUN_00015060();\n            }" ({ "{") (labeled_statement "LAB_000177a0:\n              *(undefined4 *)(puVar29 + -4) = 0x177a5;" (statement_identifier "LAB_000177a0") (: ":") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x177a5;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x177a5" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x177a5")) (; ";"))) (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" (identifier "FUN_00015060") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_214 == (byte **)0x0) {\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }" (if "if") (parenthesized_expression "(local_214 == (byte **)0x0)" (( "(") (binary_expression "local_214 == (byte **)0x0" (identifier "local_214") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;\n              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;\n              *(uint *)(puVar29 + -0xc) = local_158;\n              *(int *)(puVar29 + -0x10) = local_15c;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18325;\n              FUN_0001a4c0();\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_1b4._4_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._0_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = local_158;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_158" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_158")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = local_15c;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_15c" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_15c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18325;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18325" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18325")) (; ";")) (expression_statement "FUN_0001a4c0();" (call_expression "FUN_0001a4c0()" (identifier "FUN_0001a4c0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_00016fcb;" (goto "goto") (statement_identifier "LAB_00016fcb") (; ";")) (} "}"))) (if_statement "if ((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }" (if "if") (parenthesized_expression "((local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0))" (( "(") (binary_expression "(local_238 == (stat64 *)0x8000) ||\n             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)" (parenthesized_expression "(local_238 == (stat64 *)0x8000)" (( "(") (binary_expression "local_238 == (stat64 *)0x8000" (identifier "local_238") (== "==") (cast_expression "(stat64 *)0x8000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8000"))) () ")")) (|| "||") (parenthesized_expression "((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)" (( "(") (binary_expression "(local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0" (parenthesized_expression "(local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5))" (( "(") (binary_expression "local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)" (binary_expression "local_238 != (stat64 *)0xa000" (identifier "local_238") (!= "!=") (cast_expression "(stat64 *)0xa000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xa000"))) (& "&") (pointer_expression "*(byte *)(local_1f0 + 5)" (* "*") (cast_expression "(byte *)(local_1f0 + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 5)" (( "(") (binary_expression "local_1f0 + 5" (identifier "local_1f0") (+ "+") (number_literal "5")) () ")"))))) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            local_244 = local_1b4._16_4_;\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));\n            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;\n            local_208 = (undefined1 *)FUN_0001d190();\n            if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }\n            *(undefined1 **)(puVar29 + -8) = local_f4;\n            *(undefined1 **)(puVar29 + -0xc) = local_208;\n            *(undefined4 *)(puVar29 + -0x10) = 3;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;\n            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));\n            piVar14 = local_1f0;\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }\n            if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }\n            local_284 = (uint)local_234 & 0x1ff;\n            if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }\n            *(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;\n            local_228 = (int *)FUN_0001d190();\n            piVar23 = local_1f0;\n            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }\n            *(undefined1 **)(puVar29 + -0x10) = local_208;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18056;\n            iVar10 = close(*(int *)(puVar29 + -0x10));\n            if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }\n            *(code **)(puVar29 + -0x10) = local_220;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;\n            free(*(void **)(puVar29 + -0x10));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            bVar40 = bVar25;\n            goto joined_r0x00018387;\n          }" ({ "{") (expression_statement "local_244 = local_1b4._16_4_;" (assignment_expression "local_244 = local_1b4._16_4_" (identifier "local_244") (= "=") (field_expression "local_1b4._16_4_" (identifier "local_1b4") (. ".") (field_identifier "_16_4_"))) (; ";")) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" (identifier "local_20c") (= "=") (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" (identifier "CONCAT31") (argument_list "(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23))" (( "(") (field_expression "local_20c._1_3_" (identifier "local_20c") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(undefined1 *)((int)local_1f0 + 0x23)" (* "*") (cast_expression "(undefined1 *)((int)local_1f0 + 0x23)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x23)" (( "(") (binary_expression "(int)local_1f0 + 0x23" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x23")) () ")")))) () ")"))))) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(uint)(local_1f0[1] == 2) << 0x11" (call_expression "(uint)(local_1f0[1] == 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_1f0[1] == 2)" (( "(") (binary_expression "local_1f0[1] == 2" (subscript_expression "local_1f0[1]" (identifier "local_1f0") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "2")) () ")"))) (<< "<<") (number_literal "0x11"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17b97;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17b97" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17b97")) (; ";")) (expression_statement "local_208 = (undefined1 *)FUN_0001d190();" (assignment_expression "local_208 = (undefined1 *)FUN_0001d190()" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)FUN_0001d190()" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d190()" (identifier "FUN_0001d190") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if ((int)local_208 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }" (if "if") (parenthesized_expression "((int)local_208 < 0)" (( "(") (binary_expression "(int)local_208 < 0" (cast_expression "(int)local_208" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_208")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot open %s for reading";\n              goto LAB_00016f90;\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18d03;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18d03" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18d03")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot open %s for reading";" (assignment_expression "pcVar20 = "cannot open %s for reading"" (identifier "pcVar20") (= "=") (string_literal ""cannot open %s for reading"" (" """) (string_content "cannot open %s for reading") (" """))) (; ";")) (goto_statement "goto LAB_00016f90;" (goto "goto") (statement_identifier "LAB_00016f90") (; ";")) (} "}"))) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_f4;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_f4" (pointer_expression "*(undefined1 **)(puVar29 + -8)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_f4")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0xc) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0xc) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17bbf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17bbf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17bbf")) (; ";")) (expression_statement "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" (identifier "iVar10") (= "=") (call_expression "__fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" (identifier "__fxstat64") (argument_list "(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                *(stat64 **)(puVar29 + -8))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              goto LAB_00018b73;\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f4d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f4d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18f4d")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot fstat %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot fstat %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot fstat %s"" (" """) (string_content "cannot fstat %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f62;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f62" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18f62")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18f69;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18f69" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18f69")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (goto_statement "goto LAB_00018b73;" (goto "goto") (statement_identifier "LAB_00018b73") (; ";")) (} "}"))) (if_statement "if ((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }" (if "if") (parenthesized_expression "((local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_))" (( "(") (binary_expression "(local_158 != local_98 || local_15c != local_9c) ||\n               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)" (parenthesized_expression "(local_158 != local_98 || local_15c != local_9c)" (( "(") (binary_expression "local_158 != local_98 || local_15c != local_9c" (binary_expression "local_158 != local_98" (identifier "local_158") (!= "!=") (identifier "local_98")) (|| "||") (binary_expression "local_15c != local_9c" (identifier "local_15c") (!= "!=") (identifier "local_9c"))) () ")")) (|| "||") (parenthesized_expression "(local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)" (( "(") (binary_expression "local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_" (binary_expression "local_1b4._4_4_ != local_f4._4_4_" (field_expression "local_1b4._4_4_" (identifier "local_1b4") (. ".") (field_identifier "_4_4_")) (!= "!=") (field_expression "local_f4._4_4_" (identifier "local_f4") (. ".") (field_identifier "_4_4_"))) (|| "||") (binary_expression "local_1b4._0_4_ != local_f4._0_4_" (field_expression "local_1b4._0_4_" (identifier "local_1b4") (. ".") (field_identifier "_0_4_")) (!= "!=") (field_expression "local_f4._0_4_" (identifier "local_f4") (. ".") (field_identifier "_0_4_")))) () ")"))) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(undefined4 *)(puVar29 + -0x1c) = 0;\n              goto LAB_00018b73;\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b5a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b5a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18b5a")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"\n              ;" (assignment_expression "*(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""skipping file %s, as it was replaced while being copied"" (" """) (string_content "skipping file %s, as it was replaced while being copied") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18b6f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18b6f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18b6f")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00018b73;" (goto "goto") (statement_identifier "LAB_00018b73") (; ";")) (} "}"))) (expression_statement "local_284 = (uint)local_234 & 0x1ff;" (assignment_expression "local_284 = (uint)local_234 & 0x1ff" (identifier "local_284") (= "=") (binary_expression "(uint)local_234 & 0x1ff" (cast_expression "(uint)local_234" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_234")) (& "&") (number_literal "0x1ff"))) (; ";")) (if_statement "if ((byte)local_1f4 != '\0') {\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }" (if "if") (parenthesized_expression "((byte)local_1f4 != '\0')" (( "(") (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_00019094:\n              local_278 = local_23c;\nLAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);\n              *(code **)(puVar29 + -8) = pcVar19;\n              *(undefined4 *)(puVar29 + -0xc) = 0xc1;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              local_21c = pcVar19;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;\n              piVar14 = (int *)FUN_0001d190();\n              local_228 = piVar14;\n              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;\n              local_220 = (code *)__errno_location();\n              iVar10 = *(int *)local_220;\n              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);\n              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);\n              if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }\nLAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19126;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = iVar10;\nLAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;\n              error();\n            }" ({ "{") (labeled_statement "LAB_00019094:\n              local_278 = local_23c;" (statement_identifier "LAB_00019094") (: ":") (expression_statement "local_278 = local_23c;" (assignment_expression "local_278 = local_23c" (identifier "local_278") (= "=") (identifier "local_23c")) (; ";"))) (labeled_statement "LAB_000190a0:\n              pcVar19 = (code *)(~local_278 & local_284);" (statement_identifier "LAB_000190a0") (: ":") (expression_statement "pcVar19 = (code *)(~local_278 & local_284);" (assignment_expression "pcVar19 = (code *)(~local_278 & local_284)" (identifier "pcVar19") (= "=") (cast_expression "(code *)(~local_278 & local_284)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(~local_278 & local_284)" (( "(") (binary_expression "~local_278 & local_284" (unary_expression "~local_278" (~ "~") (identifier "local_278")) (& "&") (identifier "local_284")) () ")")))) (; ";"))) (expression_statement "*(code **)(puVar29 + -8) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -8) = pcVar19" (pointer_expression "*(code **)(puVar29 + -8)" (* "*") (cast_expression "(code **)(puVar29 + -8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xc1;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xc1" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0xc1")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "local_21c = pcVar19;" (assignment_expression "local_21c = pcVar19" (identifier "local_21c") (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x190c8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x190c8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x190c8")) (; ";")) (expression_statement "piVar14 = (int *)FUN_0001d190();" (assignment_expression "piVar14 = (int *)FUN_0001d190()" (identifier "piVar14") (= "=") (cast_expression "(int *)FUN_0001d190()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d190()" (identifier "FUN_0001d190") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_228 = piVar14;" (assignment_expression "local_228 = piVar14" (identifier "local_228") (= "=") (identifier "piVar14")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x190d5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x190d5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x190d5")) (; ";")) (expression_statement "local_220 = (code *)__errno_location();" (assignment_expression "local_220 = (code *)__errno_location()" (identifier "local_220") (= "=") (cast_expression "(code *)__errno_location()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)local_220;" (assignment_expression "iVar10 = *(int *)local_220" (identifier "iVar10") (= "=") (pointer_expression "*(int *)local_220" (* "*") (cast_expression "(int *)local_220" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")))) (; ";")) (expression_statement "bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);" (assignment_expression "bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f)" (identifier "bVar25") (= "=") (binary_expression "iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f)" (binary_expression "iVar10 == 0x11" (identifier "iVar10") (== "==") (number_literal "0x11")) (& "&") (call_expression "(byte)((uint)piVar14 >> 0x1f)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "((uint)piVar14 >> 0x1f)" (( "(") (binary_expression "(uint)piVar14 >> 0x1f" (cast_expression "(uint)piVar14" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "piVar14")) (>> ">>") (number_literal "0x1f")) () ")"))))) (; ";")) (expression_statement "local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);" (assignment_expression "local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25)" (identifier "local_22c") (= "=") (cast_expression "(__ino_t *)CONCAT31(local_22c._1_3_,bVar25)" (( "(") (type_descriptor "__ino_t *" (type_identifier "__ino_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_22c._1_3_,bVar25)" (identifier "CONCAT31") (argument_list "(local_22c._1_3_,bVar25)" (( "(") (field_expression "local_22c._1_3_" (identifier "local_22c") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar25") () ")"))))) (; ";")) (if_statement "if (bVar25 == 0) {\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }\n              else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" (if "if") (parenthesized_expression "(bVar25 == 0)" (( "(") (binary_expression "bVar25 == 0" (identifier "bVar25") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);\n                if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }\n              }" ({ "{") (labeled_statement "LAB_00019445:\n                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);" (statement_identifier "LAB_00019445") (: ":") (expression_statement "bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);" (assignment_expression "bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f)" (identifier "bVar25") (= "=") (binary_expression "iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f)" (binary_expression "iVar10 == 0x15" (identifier "iVar10") (== "==") (number_literal "0x15")) (& "&") (call_expression "(byte)((uint)local_228 >> 0x1f)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "((uint)local_228 >> 0x1f)" (( "(") (binary_expression "(uint)local_228 >> 0x1f" (cast_expression "(uint)local_228" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_228")) (>> ">>") (number_literal "0x1f")) () ")"))))) (; ";"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,bVar25)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,bVar25)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar25") () ")"))))) (; ";")) (if_statement "if (bVar25 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }\n                else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" (if "if") (parenthesized_expression "(bVar25 == 0)" (( "(") (binary_expression "bVar25 == 0" (identifier "bVar25") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);\n                  if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }\n                }" ({ "{") (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,1)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (-1 < (int)local_228) {\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }" (if "if") (parenthesized_expression "(-1 < (int)local_228)" (( "(") (binary_expression "-1 < (int)local_228" (number_literal "-1") (< "<") (cast_expression "(int)local_228" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_228"))) () ")")) (compound_statement "{\nLAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;\n                    *(int **)(puVar29 + -0xc) = local_228;\n                    *(undefined4 *)(puVar29 + -0x10) = 3;\n                    local_240 = &local_94;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;\n                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));\n                    if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }\n                    uVar11 = extraout_ECX;\n                    if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }\nLAB_000194e2:\n                    local_220 = (code *)0x0;\nLAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }\n                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }\n                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }\n                    piVar14 = local_1f0;\n                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }\n                    goto LAB_00018028;\n                  }" ({ "{") (labeled_statement "LAB_00017c81:\n                    *(stat64 **)(puVar29 + -8) = &local_94;" (statement_identifier "LAB_00017c81") (: ":") (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";"))) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "local_240 = &local_94;" (assignment_expression "local_240 = &local_94" (identifier "local_240") (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17c9e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17c9e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17c9e")) (; ";")) (expression_statement "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" (identifier "iVar10") (= "=") (call_expression "__fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" (identifier "__fxstat64") (argument_list "(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),\n                                        *(stat64 **)(puVar29 + -8))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                      *(int *)(puVar29 + -4) = iVar10;\n                      *(int *)(puVar29 + -8) = iVar10;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;\n                      piVar14 = __errno_location();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(int *)(puVar29 + -0x1c) = *piVar14;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;\n                      error();\n                    }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198f9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198f9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x198f9")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot fstat %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot fstat %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot fstat %s"" (" """) (string_content "cannot fstat %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1990e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1990e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1990e")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19915;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19915" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19915")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019922;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019922" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00019922" (& "&") (identifier "UNK_00019922"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar11 = extraout_ECX;" (assignment_expression "uVar11 = extraout_ECX" (identifier "uVar11") (= "=") (identifier "extraout_ECX")) (; ";")) (if_statement "if ((byte)local_20c != '\0') {\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }" (if "if") (parenthesized_expression "((byte)local_20c != '\0')" (( "(") (binary_expression "(byte)local_20c != '\0'" (cast_expression "(byte)local_20c" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_20c")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                      if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }\n                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;\n                      uVar9 = getpagesize();\n                      local_25c = (code *)local_94.st_blksize;\n                      local_258 = (code *)local_94.st_blksize;\n                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);\n                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }\n                      *(code **)(puVar29 + -4) = pcVar19;\n                      *(code **)(puVar29 + -8) = pcVar19;\n                      *(undefined4 *)(puVar29 + -0xc) = 2;\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0;\n                      *(undefined4 *)(puVar29 + -0x18) = 0;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined1 **)(puVar29 + -0x20) = local_208;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;\n                      FUN_0001d110();\n                      local_21c = (code *)(local_f4._16_4_ & 0xf000);\n                      bVar3 = false;\n                      if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }\n                      local_220 = (code *)(uVar9 - 1);\n                      if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\nLAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;\n                      *(__ino_t **)(puVar29 + -0x14) = local_22c;\n                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n                      *(char **)(puVar29 + -0x20) = local_1f8;\n                      *(char **)(puVar29 + -0x24) = local_200;\n                      *(uint *)(puVar29 + -0x28) = uVar9;\n                      *(code **)(puVar29 + -0x2c) = local_25c;\n                      *(code **)(puVar29 + -0x30) = local_258;\n                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;\n                      uVar12 = FUN_000151c0();\n                      if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }\nLAB_000197c4:\n                      bVar25 = 0;\n                      goto LAB_00018028;\n                    }" ({ "{") (if_statement "if (local_1f0[0xe] != 0) {\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }" (if "if") (parenthesized_expression "(local_1f0[0xe] != 0)" (( "(") (binary_expression "local_1f0[0xe] != 0" (subscript_expression "local_1f0[0xe]" (identifier "local_1f0") ([ "[") (number_literal "0xe") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        *(int **)(puVar29 + -4) = local_1f0;\n                        *(undefined1 **)(puVar29 + -8) = local_208;\n                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;\n                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));\n                        uVar11 = extraout_ECX_11;\n                        if (iVar10 == 0) goto LAB_000194e2;\n                        if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }\n                      }" ({ "{") (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -8) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -8) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -8)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0x40049409;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0x40049409" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x40049409")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d52;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d52" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19d52")) (; ";")) (expression_statement "iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" (identifier "ioctl") (argument_list "(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(ulong *)(puVar29 + -0xc)" (* "*") (cast_expression "(ulong *)(puVar29 + -0xc)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_11;" (assignment_expression "uVar11 = extraout_ECX_11" (identifier "uVar11") (= "=") (identifier "extraout_ECX_11")) (; ";")) (if_statement "if (iVar10 == 0) goto LAB_000194e2;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000194e2;" (goto "goto") (statement_identifier "LAB_000194e2") (; ";"))) (if_statement "if (local_1f0[0xe] == 2) {\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }" (if "if") (parenthesized_expression "(local_1f0[0xe] == 2)" (( "(") (binary_expression "local_1f0[0xe] == 2" (subscript_expression "local_1f0[0xe]" (identifier "local_1f0") ([ "[") (number_literal "0xe") (] "]")) (== "==") (number_literal "2")) () ")")) (compound_statement "{\n                          *(int **)(puVar29 + -4) = local_1f0;\n                          *(char **)(puVar29 + -8) = local_200;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 1;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;\n                          uVar11 = FUN_000203c0();\n                          *(char **)(puVar29 + -8) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0xc) = 4;\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;\n                          local_20c = (byte *)FUN_000203c0();\n                          *(undefined4 *)(puVar29 + -8) = 5;\n                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";\n                          *(undefined4 *)(puVar29 + -0x10) = 0;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;\n                          uVar12 = dcgettext();\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;\n                          piVar14 = __errno_location();\n                          pbVar13 = local_20c;\n                          *(undefined4 *)(puVar29 + -0x10) = uVar11;\n                          *(byte **)(puVar29 + -0x14) = pbVar13;\n                          *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                          *(int *)(puVar29 + -0x1c) = *piVar14;\n                          *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;\n                          error();\n                        }" ({ "{") (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d7d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d7d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19d7d")) (; ";")) (expression_statement "uVar11 = FUN_000203c0();" (assignment_expression "uVar11 = FUN_000203c0()" (identifier "uVar11") (= "=") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d91;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d91" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19d91")) (; ";")) (expression_statement "local_20c = (byte *)FUN_000203c0();" (assignment_expression "local_20c = (byte *)FUN_000203c0()" (identifier "local_20c") (= "=") (cast_expression "(byte *)FUN_000203c0()" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000203c0()" (identifier "FUN_000203c0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "failed to clone %s from %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "failed to clone %s from %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""failed to clone %s from %s"" (" """) (string_content "failed to clone %s from %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19daa;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19daa" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19daa")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19db1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19db1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19db1")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" (identifier "pbVar13") (= "=") (identifier "local_20c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(byte **)(puVar29 + -0x14) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x14) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x14)" (* "*") (cast_expression "(byte **)(puVar29 + -0x14)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "pbVar13")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019dc7" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00019dc7" (& "&") (identifier "UNK_00019dc7"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x17ccd;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x17ccd" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x17ccd")) (; ";")) (expression_statement "uVar9 = getpagesize();" (assignment_expression "uVar9 = getpagesize()" (identifier "uVar9") (= "=") (call_expression "getpagesize()" (identifier "getpagesize") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_25c = (code *)local_94.st_blksize;" (assignment_expression "local_25c = (code *)local_94.st_blksize" (identifier "local_25c") (= "=") (cast_expression "(code *)local_94.st_blksize" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")))) (; ";")) (expression_statement "local_258 = (code *)local_94.st_blksize;" (assignment_expression "local_258 = (code *)local_94.st_blksize" (identifier "local_258") (= "=") (cast_expression "(code *)local_94.st_blksize" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")))) (; ";")) (expression_statement "pcVar19 = (code *)(local_94.st_blksize + -0x20000);" (assignment_expression "pcVar19 = (code *)(local_94.st_blksize + -0x20000)" (identifier "pcVar19") (= "=") (cast_expression "(code *)(local_94.st_blksize + -0x20000)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_94.st_blksize + -0x20000)" (( "(") (binary_expression "local_94.st_blksize + -0x20000" (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")) (+ "+") (number_literal "-0x20000")) () ")")))) (; ";")) (if_statement "if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }" (if "if") (parenthesized_expression "((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000))" (( "(") (binary_expression "(code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)" (cast_expression "(code *)0x1ffe0000" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1ffe0000")) (< "<") (cast_expression "(code *)(local_94.st_blksize + -0x20000)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_94.st_blksize + -0x20000)" (( "(") (binary_expression "local_94.st_blksize + -0x20000" (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")) (+ "+") (number_literal "-0x20000")) () ")")))) () ")")) (compound_statement "{\n                        local_258 = FUN_00020000;\n                        local_25c = (code *)0x200;\n                        pcVar19 = local_25c;\n                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }\n                      }" ({ "{") (expression_statement "local_258 = FUN_00020000;" (assignment_expression "local_258 = FUN_00020000" (identifier "local_258") (= "=") (identifier "FUN_00020000")) (; ";")) (expression_statement "local_25c = (code *)0x200;" (assignment_expression "local_25c = (code *)0x200" (identifier "local_25c") (= "=") (cast_expression "(code *)0x200" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x200"))) (; ";")) (expression_statement "pcVar19 = local_25c;" (assignment_expression "pcVar19 = local_25c" (identifier "pcVar19") (= "=") (identifier "local_25c")) (; ";")) (if_statement "if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }" (if "if") (parenthesized_expression "((code *)(local_94.st_blksize + -1) < (code *)0x20000000)" (( "(") (binary_expression "(code *)(local_94.st_blksize + -1) < (code *)0x20000000" (cast_expression "(code *)(local_94.st_blksize + -1)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_94.st_blksize + -1)" (( "(") (binary_expression "local_94.st_blksize + -1" (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")) (+ "+") (number_literal "-1")) () ")"))) (< "<") (cast_expression "(code *)0x20000000" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x20000000"))) () ")")) (compound_statement "{\n                          pcVar19 = (code *)local_94.st_blksize;\n                          local_25c = (code *)local_94.st_blksize;\n                        }" ({ "{") (expression_statement "pcVar19 = (code *)local_94.st_blksize;" (assignment_expression "pcVar19 = (code *)local_94.st_blksize" (identifier "pcVar19") (= "=") (cast_expression "(code *)local_94.st_blksize" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")))) (; ";")) (expression_statement "local_25c = (code *)local_94.st_blksize;" (assignment_expression "local_25c = (code *)local_94.st_blksize" (identifier "local_25c") (= "=") (cast_expression "(code *)local_94.st_blksize" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_94.st_blksize" (identifier "local_94") (. ".") (field_identifier "st_blksize")))) (; ";")) (} "}"))) (} "}"))) (expression_statement "*(code **)(puVar29 + -4) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -4) = pcVar19" (pointer_expression "*(code **)(puVar29 + -4)" (* "*") (cast_expression "(code **)(puVar29 + -4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "*(code **)(puVar29 + -8) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -8) = pcVar19" (pointer_expression "*(code **)(puVar29 + -8)" (* "*") (cast_expression "(code **)(puVar29 + -8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 2;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 2" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "2")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x20) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x20) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x17d28;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x17d28" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x17d28")) (; ";")) (expression_statement "FUN_0001d110();" (call_expression "FUN_0001d110()" (identifier "FUN_0001d110") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_21c = (code *)(local_f4._16_4_ & 0xf000);" (assignment_expression "local_21c = (code *)(local_f4._16_4_ & 0xf000)" (identifier "local_21c") (= "=") (cast_expression "(code *)(local_f4._16_4_ & 0xf000)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_f4._16_4_ & 0xf000)" (( "(") (binary_expression "local_f4._16_4_ & 0xf000" (field_expression "local_f4._16_4_" (identifier "local_f4") (. ".") (field_identifier "_16_4_")) (& "&") (number_literal "0xf000")) () ")")))) (; ";")) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" (identifier "bVar3") (= "=") (false "false")) (; ";")) (if_statement "if (local_21c == (code *)0x8000) {\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }" (if "if") (parenthesized_expression "(local_21c == (code *)0x8000)" (( "(") (binary_expression "local_21c == (code *)0x8000" (identifier "local_21c") (== "==") (cast_expression "(code *)0x8000" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8000"))) () ")")) (compound_statement "{\n                        uVar22 = local_c4 >> 0x1f & 0x1ff;\n                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);\n                        iVar8 = iVar10 >> 9;\n                        uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));\n                        iVar10 = local_b8 - iVar8;\n                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;\n                      }" ({ "{") (expression_statement "uVar22 = local_c4 >> 0x1f & 0x1ff;" (assignment_expression "uVar22 = local_c4 >> 0x1f & 0x1ff" (identifier "uVar22") (= "=") (binary_expression "local_c4 >> 0x1f & 0x1ff" (binary_expression "local_c4 >> 0x1f" (identifier "local_c4") (>> ">>") (number_literal "0x1f")) (& "&") (number_literal "0x1ff"))) (; ";")) (expression_statement "iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);" (assignment_expression "iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_)" (identifier "iVar10") (= "=") (binary_expression "local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_)" (identifier "local_c4") (+ "+") (cast_expression "(uint)CARRY4(uVar22,local_f4._44_4_)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar22,local_f4._44_4_)" (identifier "CARRY4") (argument_list "(uVar22,local_f4._44_4_)" (( "(") (identifier "uVar22") (, ",") (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_")) () ")")))))) (; ";")) (expression_statement "iVar8 = iVar10 >> 9;" (assignment_expression "iVar8 = iVar10 >> 9" (identifier "iVar8") (= "=") (binary_expression "iVar10 >> 9" (identifier "iVar10") (>> ">>") (number_literal "9"))) (; ";")) (expression_statement "uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));" (assignment_expression "uVar22 = (uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" (identifier "uVar22") (= "=") (call_expression "(uint)(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000))" (( "(") (binary_expression "local_bc <\n                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000)" (identifier "local_bc") (< "<") (parenthesized_expression "((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000)" (( "(") (binary_expression "(uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000" (binary_expression "(uint)(local_f4._44_4_ + uVar22) >> 9" (call_expression "(uint)(local_f4._44_4_ + uVar22)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_f4._44_4_ + uVar22)" (( "(") (binary_expression "local_f4._44_4_ + uVar22" (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_")) (+ "+") (identifier "uVar22")) () ")"))) (>> ">>") (number_literal "9")) (| "|") (binary_expression "iVar10 * 0x800000" (identifier "iVar10") (* "*") (number_literal "0x800000"))) () ")"))) () ")")))) (; ";")) (expression_statement "iVar10 = local_b8 - iVar8;" (assignment_expression "iVar10 = local_b8 - iVar8" (identifier "iVar10") (= "=") (binary_expression "local_b8 - iVar8" (identifier "local_b8") (- "-") (identifier "iVar8"))) (; ";")) (expression_statement "bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0;" (assignment_expression "bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0" (identifier "bVar3") (= "=") (binary_expression "(SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=\n                                (int)(iVar10 - uVar22) < 0" (parenthesized_expression "(SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22))" (( "(") (binary_expression "SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)" (call_expression "SBORROW4(local_b8,iVar8)" (identifier "SBORROW4") (argument_list "(local_b8,iVar8)" (( "(") (identifier "local_b8") (, ",") (identifier "iVar8") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar10,uVar22)" (identifier "SBORROW4") (argument_list "(iVar10,uVar22)" (( "(") (identifier "iVar10") (, ",") (identifier "uVar22") () ")")))) () ")")) (!= "!=") (binary_expression "(int)(iVar10 - uVar22) < 0" (cast_expression "(int)(iVar10 - uVar22)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar10 - uVar22)" (( "(") (binary_expression "iVar10 - uVar22" (identifier "iVar10") (- "-") (identifier "uVar22")) () ")"))) (< "<") (number_literal "0")))) (; ";")) (} "}"))) (expression_statement "local_220 = (code *)(uVar9 - 1);" (assignment_expression "local_220 = (code *)(uVar9 - 1)" (identifier "local_220") (= "=") (cast_expression "(code *)(uVar9 - 1)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")")))) (; ";")) (if_statement "if ((local_94.st_mode & 0xf000) == 0x8000) {\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }\n                      else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" (if "if") (parenthesized_expression "((local_94.st_mode & 0xf000) == 0x8000)" (( "(") (binary_expression "(local_94.st_mode & 0xf000) == 0x8000" (parenthesized_expression "(local_94.st_mode & 0xf000)" (( "(") (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" (identifier "local_94") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x8000")) () ")")) (compound_statement "{\n                        if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }\n                        local_22c = &local_1d4;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" ({ "{") (if_statement "if (local_1f0[3] != 3) {\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }" (if "if") (parenthesized_expression "(local_1f0[3] != 3)" (( "(") (binary_expression "local_1f0[3] != 3" (subscript_expression "local_1f0[3]" (identifier "local_1f0") ([ "[") (number_literal "3") (] "]")) (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                          if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }\n                          goto LAB_00017d9d;\n                        }" ({ "{") (if_statement "if ((local_1f0[3] == 2) && (bVar3)) {\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }" (if "if") (parenthesized_expression "((local_1f0[3] == 2) && (bVar3))" (( "(") (binary_expression "(local_1f0[3] == 2) && (bVar3)" (parenthesized_expression "(local_1f0[3] == 2)" (( "(") (binary_expression "local_1f0[3] == 2" (subscript_expression "local_1f0[3]" (identifier "local_1f0") ([ "[") (number_literal "3") (] "]")) (== "==") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")"))) () ")")) (compound_statement "{\n                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;\n                            local_220 = (code *)FUN_00022ed0();\n                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                            goto LAB_000199fc;\n                          }" ({ "{") (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" (* "*") (cast_expression "(code **)(puVar29 + -0x10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_258 + uVar9" (identifier "local_258") (+ "+") (identifier "uVar9"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x199e0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x199e0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x199e0")) (; ";")) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" (identifier "local_220") (= "=") (cast_expression "(code *)FUN_00022ed0()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00022ed0()" (identifier "FUN_00022ed0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (identifier "local_27c") (= "=") (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" (( "(") (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")) (+ "+") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")"))) () ")"))) (- "-") (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((byte *)local_220 + (uVar9 - 1))" (( "(") (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")) (+ "+") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")"))) () ")"))) (% "%") (identifier "uVar9")))) (; ";")) (goto_statement "goto LAB_000199fc;" (goto "goto") (statement_identifier "LAB_000199fc") (; ";")) (} "}"))) (goto_statement "goto LAB_00017d9d;" (goto "goto") (statement_identifier "LAB_00017d9d") (; ";")) (} "}"))) (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" (* "*") (cast_expression "(code **)(puVar29 + -0x10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_258 + uVar9" (identifier "local_258") (+ "+") (identifier "uVar9"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f62;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f62" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19f62")) (; ";")) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" (identifier "local_220") (= "=") (cast_expression "(code *)FUN_00022ed0()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00022ed0()" (identifier "FUN_00022ed0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (identifier "local_27c") (= "=") (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" (( "(") (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")) (+ "+") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")"))) () ")"))) (- "-") (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((byte *)local_220 + (uVar9 - 1))" (( "(") (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")) (+ "+") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")"))) () ")"))) (% "%") (identifier "uVar9")))) (; ";")) (if_statement "if (bVar3) {\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }" (if "if") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")")) (compound_statement "{\nLAB_000199fc:\n                          local_274 = local_1f0[3];\n                          local_285 = (byte)local_20c;\n                          goto LAB_00019a18;\n                        }" ({ "{") (labeled_statement "LAB_000199fc:\n                          local_274 = local_1f0[3];" (statement_identifier "LAB_000199fc") (: ":") (expression_statement "local_274 = local_1f0[3];" (assignment_expression "local_274 = local_1f0[3]" (identifier "local_274") (= "=") (subscript_expression "local_1f0[3]" (identifier "local_1f0") ([ "[") (number_literal "3") (] "]"))) (; ";"))) (expression_statement "local_285 = (byte)local_20c;" (assignment_expression "local_285 = (byte)local_20c" (identifier "local_285") (= "=") (cast_expression "(byte)local_20c" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_20c"))) (; ";")) (goto_statement "goto LAB_00019a18;" (goto "goto") (statement_identifier "LAB_00019a18") (; ";")) (} "}"))) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" (identifier "local_22c") (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" (identifier "uVar9") (= "=") (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_1f0[3] == 3)" (( "(") (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" (identifier "local_1f0") ([ "[") (number_literal "3") (] "]")) (== "==") (number_literal "3")) () ")")))) (; ";")) (} "}")) (else_clause "else {\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" (else "else") (compound_statement "{\nLAB_00017d9d:\n                        iVar10 = local_c0;\n                        if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }\n                        local_220 = (code *)(0x7fffffff - uVar9);\n                        *(undefined4 *)(puVar29 + -4) = 0x20000;\n                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);\n                        *(code **)(puVar29 + -0xc) = local_258;\n                        *(int *)(puVar29 + -0x10) = iVar10;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;\n                        pcVar19 = (code *)FUN_0001c430();\n                        if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }\n                        local_21c = pcVar19 + -1 + (int)local_258;\n                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);\n                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }\n                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;\n                        local_220 = (code *)FUN_00022ed0();\n                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;\n                        if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }\n                        local_22c = &local_1d4;\n                        local_25c = (code *)0x0;\n                        uVar9 = (uint)(local_1f0[3] == 3);\n                      }" ({ "{") (labeled_statement "LAB_00017d9d:\n                        iVar10 = local_c0;" (statement_identifier "LAB_00017d9d") (: ":") (expression_statement "iVar10 = local_c0;" (assignment_expression "iVar10 = local_c0" (identifier "iVar10") (= "=") (identifier "local_c0")) (; ";"))) (if_statement "if (0x1ffe0000 < local_c0 - 0x20000U) {\n                          iVar10 = 0x20000;\n                        }" (if "if") (parenthesized_expression "(0x1ffe0000 < local_c0 - 0x20000U)" (( "(") (binary_expression "0x1ffe0000 < local_c0 - 0x20000U" (number_literal "0x1ffe0000") (< "<") (binary_expression "local_c0 - 0x20000U" (identifier "local_c0") (- "-") (number_literal "0x20000U"))) () ")")) (compound_statement "{\n                          iVar10 = 0x20000;\n                        }" ({ "{") (expression_statement "iVar10 = 0x20000;" (assignment_expression "iVar10 = 0x20000" (identifier "iVar10") (= "=") (number_literal "0x20000")) (; ";")) (} "}"))) (expression_statement "local_220 = (code *)(0x7fffffff - uVar9);" (assignment_expression "local_220 = (code *)(0x7fffffff - uVar9)" (identifier "local_220") (= "=") (cast_expression "(code *)(0x7fffffff - uVar9)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(0x7fffffff - uVar9)" (( "(") (binary_expression "0x7fffffff - uVar9" (number_literal "0x7fffffff") (- "-") (identifier "uVar9")) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x20000;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x20000" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x20000")) (; ";")) (expression_statement "*(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);" (assignment_expression "*(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9)" (pointer_expression "*(code **)(puVar29 + -8)" (* "*") (cast_expression "(code **)(puVar29 + -8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (cast_expression "(code *)(0x7fffffff - uVar9)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(0x7fffffff - uVar9)" (( "(") (binary_expression "0x7fffffff - uVar9" (number_literal "0x7fffffff") (- "-") (identifier "uVar9")) () ")")))) (; ";")) (expression_statement "*(code **)(puVar29 + -0xc) = local_258;" (assignment_expression "*(code **)(puVar29 + -0xc) = local_258" (pointer_expression "*(code **)(puVar29 + -0xc)" (* "*") (cast_expression "(code **)(puVar29 + -0xc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_258")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17dd4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17dd4" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17dd4")) (; ";")) (expression_statement "pcVar19 = (code *)FUN_0001c430();" (assignment_expression "pcVar19 = (code *)FUN_0001c430()" (identifier "pcVar19") (= "=") (cast_expression "(code *)FUN_0001c430()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001c430()" (identifier "FUN_0001c430") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if ((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }" (if "if") (parenthesized_expression "((local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258)))" (( "(") (binary_expression "(local_21c == (code *)0x8000) &&\n                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))" (parenthesized_expression "(local_21c == (code *)0x8000)" (( "(") (binary_expression "local_21c == (code *)0x8000" (identifier "local_21c") (== "==") (cast_expression "(code *)0x8000" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8000"))) () ")")) (&& "&&") (parenthesized_expression "(local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))" (( "(") (binary_expression "local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258)" (identifier "local_c4") (< "<") (cast_expression "(int)(uint)((uint)local_f4._44_4_ < local_258)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (call_expression "(uint)((uint)local_f4._44_4_ < local_258)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((uint)local_f4._44_4_ < local_258)" (( "(") (binary_expression "(uint)local_f4._44_4_ < local_258" (cast_expression "(uint)local_f4._44_4_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_"))) (< "<") (identifier "local_258")) () ")"))))) () ")"))) () ")")) (compound_statement "{\n                          local_258 = (code *)(local_f4._44_4_ + 1);\n                        }" ({ "{") (expression_statement "local_258 = (code *)(local_f4._44_4_ + 1);" (assignment_expression "local_258 = (code *)(local_f4._44_4_ + 1)" (identifier "local_258") (= "=") (cast_expression "(code *)(local_f4._44_4_ + 1)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_f4._44_4_ + 1)" (( "(") (binary_expression "local_f4._44_4_ + 1" (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}"))) (expression_statement "local_21c = pcVar19 + -1 + (int)local_258;" (assignment_expression "local_21c = pcVar19 + -1 + (int)local_258" (identifier "local_21c") (= "=") (binary_expression "pcVar19 + -1 + (int)local_258" (binary_expression "pcVar19 + -1" (identifier "pcVar19") (+ "+") (number_literal "-1")) (+ "+") (cast_expression "(int)local_258" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_258")))) (; ";")) (expression_statement "local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);" (assignment_expression "local_258 = local_21c + -((uint)local_21c % (uint)pcVar19)" (identifier "local_258") (= "=") (binary_expression "local_21c + -((uint)local_21c % (uint)pcVar19)" (identifier "local_21c") (+ "+") (unary_expression "-((uint)local_21c % (uint)pcVar19)" (- "-") (parenthesized_expression "((uint)local_21c % (uint)pcVar19)" (( "(") (binary_expression "(uint)local_21c % (uint)pcVar19" (cast_expression "(uint)local_21c" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_21c")) (% "%") (cast_expression "(uint)pcVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar19"))) () ")"))))) (; ";")) (if_statement "if ((local_258 == (code *)0x0) || (local_220 < local_258)) {\n                          local_258 = pcVar19;\n                        }" (if "if") (parenthesized_expression "((local_258 == (code *)0x0) || (local_220 < local_258))" (( "(") (binary_expression "(local_258 == (code *)0x0) || (local_220 < local_258)" (parenthesized_expression "(local_258 == (code *)0x0)" (( "(") (binary_expression "local_258 == (code *)0x0" (identifier "local_258") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(local_220 < local_258)" (( "(") (binary_expression "local_220 < local_258" (identifier "local_220") (< "<") (identifier "local_258")) () ")"))) () ")")) (compound_statement "{\n                          local_258 = pcVar19;\n                        }" ({ "{") (expression_statement "local_258 = pcVar19;" (assignment_expression "local_258 = pcVar19" (identifier "local_258") (= "=") (identifier "pcVar19")) (; ";")) (} "}"))) (expression_statement "*(code **)(puVar29 + -0x10) = local_258 + uVar9;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_258 + uVar9" (pointer_expression "*(code **)(puVar29 + -0x10)" (* "*") (cast_expression "(code **)(puVar29 + -0x10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_258 + uVar9" (identifier "local_258") (+ "+") (identifier "uVar9"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17e2e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17e2e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17e2e")) (; ";")) (expression_statement "local_220 = (code *)FUN_00022ed0();" (assignment_expression "local_220 = (code *)FUN_00022ed0()" (identifier "local_220") (= "=") (cast_expression "(code *)FUN_00022ed0()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00022ed0()" (identifier "FUN_00022ed0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;" (assignment_expression "local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (identifier "local_27c") (= "=") (binary_expression "(int)((byte *)local_220 + (uVar9 - 1)) -\n                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (cast_expression "(int)((byte *)local_220 + (uVar9 - 1))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((byte *)local_220 + (uVar9 - 1))" (( "(") (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")) (+ "+") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")"))) () ")"))) (- "-") (binary_expression "(uint)((byte *)local_220 + (uVar9 - 1)) % uVar9" (call_expression "(uint)((byte *)local_220 + (uVar9 - 1))" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((byte *)local_220 + (uVar9 - 1))" (( "(") (binary_expression "(byte *)local_220 + (uVar9 - 1)" (cast_expression "(byte *)local_220" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")) (+ "+") (parenthesized_expression "(uVar9 - 1)" (( "(") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1")) () ")"))) () ")"))) (% "%") (identifier "uVar9")))) (; ";")) (if_statement "if (bVar3) {\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }" (if "if") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")")) (compound_statement "{\n                          local_285 = '\0';\n                          local_274 = 1;\nLAB_00019a18:\n                          pcVar19 = (code *)0x0;\n                          iVar10 = 0;\n                          local_21c = (code *)local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;\n                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;\n                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;\n                          *(undefined1 **)(puVar29 + -0x10) = local_208;\n                          local_218 = local_c4;\n                          local_22c = &local_1d4;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;\n                          FUN_0001a6d0();\n                          local_254 = (code *)0x0;\n                          local_250 = 0;\n                          local_24c = 0;\n                          local_248 = 0;\n                          local_280 = ppuVar28;\n                          do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');\n                          ppuVar28 = local_280;\n                          bVar3 = true;\n                          if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }\n                          if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }\n                          goto LAB_00017ed4;\n                        }" ({ "{") (expression_statement "local_285 = '\0';" (assignment_expression "local_285 = '\0'" (identifier "local_285") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_274 = 1;" (assignment_expression "local_274 = 1" (identifier "local_274") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_00019a18:\n                          pcVar19 = (code *)0x0;" (statement_identifier "LAB_00019a18") (: ":") (expression_statement "pcVar19 = (code *)0x0;" (assignment_expression "pcVar19 = (code *)0x0" (identifier "pcVar19") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_21c = (code *)local_f4._44_4_;" (assignment_expression "local_21c = (code *)local_f4._44_4_" (identifier "local_21c") (= "=") (cast_expression "(code *)local_f4._44_4_" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -4) = local_f4._44_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = local_f4._44_4_" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_f4._44_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_f4._44_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (field_expression "local_f4._44_4_" (identifier "local_f4") (. ".") (field_identifier "_44_4_"))) (; ";")) (expression_statement "*(__ino_t **)(puVar29 + -0xc) = &local_1d4;" (assignment_expression "*(__ino_t **)(puVar29 + -0xc) = &local_1d4" (pointer_expression "*(__ino_t **)(puVar29 + -0xc)" (* "*") (cast_expression "(__ino_t **)(puVar29 + -0xc)" (( "(") (type_descriptor "__ino_t **" (type_identifier "__ino_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "local_218 = local_c4;" (assignment_expression "local_218 = local_c4" (identifier "local_218") (= "=") (identifier "local_c4")) (; ";")) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" (identifier "local_22c") (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19a4e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19a4e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19a4e")) (; ";")) (expression_statement "FUN_0001a6d0();" (call_expression "FUN_0001a6d0()" (identifier "FUN_0001a6d0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_254 = (code *)0x0;" (assignment_expression "local_254 = (code *)0x0" (identifier "local_254") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_250 = 0;" (assignment_expression "local_250 = 0" (identifier "local_250") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_24c = 0;" (assignment_expression "local_24c = 0" (identifier "local_24c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_248 = 0;" (assignment_expression "local_248 = 0" (identifier "local_248") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_280 = ppuVar28;" (assignment_expression "local_280 = ppuVar28" (identifier "local_280") (= "=") (identifier "ppuVar28")) (; ";")) (do_statement "do {\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          } while (local_1bf == '\0');" (do "do") (compound_statement "{\n                            *(__ino_t **)(puVar29 + -0x10) = local_22c;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;\n                            uVar12 = FUN_0001a710();\n                            ppuVar28 = local_280;\n                            if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }\n                            if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }\n                            *(int *)(puVar29 + -0x10) = local_1bc;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;\n                            free(*(void **)(puVar29 + -0x10));\n                            local_1bc = 0;\n                            local_1c4 = (stat64 *)0x0;\n                            uVar11 = extraout_ECX_05;\n                          }" ({ "{") (expression_statement "*(__ino_t **)(puVar29 + -0x10) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x10) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x10)" (* "*") (cast_expression "(__ino_t **)(puVar29 + -0x10)" (( "(") (type_descriptor "__ino_t **" (type_identifier "__ino_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_22c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19a93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19a93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19a93")) (; ";")) (expression_statement "uVar12 = FUN_0001a710();" (assignment_expression "uVar12 = FUN_0001a710()" (identifier "uVar12") (= "=") (call_expression "FUN_0001a710()" (identifier "FUN_0001a710") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" (identifier "ppuVar28") (= "=") (identifier "local_280")) (; ";")) (if_statement "if ((char)uVar12 == '\0') {\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }" (if "if") (parenthesized_expression "((char)uVar12 == '\0')" (( "(") (binary_expression "(char)uVar12 == '\0'" (cast_expression "(char)uVar12" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar12")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                              uVar11 = extraout_ECX_10;\n                              if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }\n                              break;\n                            }" ({ "{") (expression_statement "uVar11 = extraout_ECX_10;" (assignment_expression "uVar11 = extraout_ECX_10" (identifier "uVar11") (= "=") (identifier "extraout_ECX_10")) (; ";")) (if_statement "if (local_1bf == '\0') {\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }" (if "if") (parenthesized_expression "(local_1bf == '\0')" (( "(") (binary_expression "local_1bf == '\0'" (identifier "local_1bf") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                                if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }\n                                pcVar19 = (code *)0x0;\n                                if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }\n                                uVar9 = (uint)(local_1f0[3] == 3);\n                                local_25c = pcVar19;\n                                goto LAB_00017e78;\n                              }" ({ "{") (if_statement "if (local_1c0 == '\0') {\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }" (if "if") (parenthesized_expression "(local_1c0 == '\0')" (( "(") (binary_expression "local_1c0 == '\0'" (identifier "local_1c0") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                                  *(undefined4 *)(puVar29 + -4) = uVar12;\n                                  *(char **)(puVar29 + -8) = local_200;\n                                  *(undefined4 *)(puVar29 + -0xc) = 3;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;\n                                  uVar11 = FUN_00020700();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  ppuVar28 = ppuVar28 + -0x2aaf;\n                                  goto LAB_00019fe6;\n                                }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_200;" (assignment_expression "*(char **)(puVar29 + -8) = local_200" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a1b5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a1b5")) (; ";")) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" (identifier "uVar11") (= "=") (call_expression "FUN_00020700()" (identifier "FUN_00020700") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "ppuVar28 = ppuVar28 + -0x2aaf;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2aaf" (identifier "ppuVar28") (= "=") (binary_expression "ppuVar28 + -0x2aaf" (identifier "ppuVar28") (+ "+") (number_literal "-0x2aaf"))) (; ";")) (goto_statement "goto LAB_00019fe6;" (goto "goto") (statement_identifier "LAB_00019fe6") (; ";")) (} "}"))) (expression_statement "pcVar19 = (code *)0x0;" (assignment_expression "pcVar19 = (code *)0x0" (identifier "pcVar19") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (local_285 != '\0') {\n                                  pcVar19 = local_25c;\n                                }" (if "if") (parenthesized_expression "(local_285 != '\0')" (( "(") (binary_expression "local_285 != '\0'" (identifier "local_285") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                                  pcVar19 = local_25c;\n                                }" ({ "{") (expression_statement "pcVar19 = local_25c;" (assignment_expression "pcVar19 = local_25c" (identifier "pcVar19") (= "=") (identifier "local_25c")) (; ";")) (} "}"))) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" (identifier "uVar9") (= "=") (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_1f0[3] == 3)" (( "(") (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" (identifier "local_1f0") ([ "[") (number_literal "3") (] "]")) (== "==") (number_literal "3")) () ")")))) (; ";")) (expression_statement "local_25c = pcVar19;" (assignment_expression "local_25c = pcVar19" (identifier "local_25c") (= "=") (identifier "pcVar19")) (; ";")) (goto_statement "goto LAB_00017e78;" (goto "goto") (statement_identifier "LAB_00017e78") (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (if_statement "if (local_1c4 != (stat64 *)0x0) {\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }" (if "if") (parenthesized_expression "(local_1c4 != (stat64 *)0x0)" (( "(") (binary_expression "local_1c4 != (stat64 *)0x0" (identifier "local_1c4") (!= "!=") (cast_expression "(stat64 *)0x0" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                              local_234 = (stat64 *)0x0;\n                              local_26c = pcVar19;\n                              local_264 = local_24c;\n                              local_260 = local_248;\n                              local_268 = iVar10;\n                              do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);\n                            }" ({ "{") (expression_statement "local_234 = (stat64 *)0x0;" (assignment_expression "local_234 = (stat64 *)0x0" (identifier "local_234") (= "=") (cast_expression "(stat64 *)0x0" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_26c = pcVar19;" (assignment_expression "local_26c = pcVar19" (identifier "local_26c") (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "local_264 = local_24c;" (assignment_expression "local_264 = local_24c" (identifier "local_264") (= "=") (identifier "local_24c")) (; ";")) (expression_statement "local_260 = local_248;" (assignment_expression "local_260 = local_248" (identifier "local_260") (= "=") (identifier "local_248")) (; ";")) (expression_statement "local_268 = iVar10;" (assignment_expression "local_268 = iVar10" (identifier "local_268") (= "=") (identifier "iVar10")) (; ";")) (do_statement "do {\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              } while (local_234 < local_1c4);" (do "do") (compound_statement "{\n                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);\n                                pcVar19 = (code *)*puVar37;\n                                iVar10 = puVar37[1];\n                                local_24c = puVar37[2];\n                                local_248 = puVar37[3];\n                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;\n                                iVar8 = local_218 - iVar27;\n                                if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }\n                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);\n                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );\n                                local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                                if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }\nLAB_00019ae0:\n                                pcVar24 = (code *)0x0;\n                                if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }\nLAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;\n                                *(uint **)(puVar29 + -0x14) = &local_1dc;\n                                *(int *)(puVar29 + -0x18) = local_248;\n                                *(uint *)(puVar29 + -0x1c) = local_24c;\n                                *(char **)(puVar29 + -0x20) = local_1f8;\n                                *(char **)(puVar29 + -0x24) = local_200;\n                                *(undefined4 *)(puVar29 + -0x28) = 1;\n                                *(code **)(puVar29 + -0x2c) = pcVar24;\n                                *(code **)(puVar29 + -0x30) = local_258;\n                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;\n                                cVar6 = FUN_000151c0();\n                                if (cVar6 == '\0') goto LAB_00019cf7;\n                                local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);\n                                local_254 = pcVar19 + local_1dc;\n                                uVar38 = (byte)local_20c;\n                                if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }\n                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);\n                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }\n                                local_26c = pcVar19;\n                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);\n                                local_268 = iVar10;\n                                local_264 = local_24c;\n                                local_260 = local_248;\n                              }" ({ "{") (expression_statement "puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);" (assignment_expression "puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14)" (identifier "puVar37") (= "=") (cast_expression "(undefined4 *)(local_1bc + (int)local_234 * 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1bc + (int)local_234 * 0x14)" (( "(") (binary_expression "local_1bc + (int)local_234 * 0x14" (identifier "local_1bc") (+ "+") (binary_expression "(int)local_234 * 0x14" (cast_expression "(int)local_234" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_234")) (* "*") (number_literal "0x14"))) () ")")))) (; ";")) (expression_statement "pcVar19 = (code *)*puVar37;" (assignment_expression "pcVar19 = (code *)*puVar37" (identifier "pcVar19") (= "=") (cast_expression "(code *)*puVar37" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar37" (* "*") (identifier "puVar37")))) (; ";")) (expression_statement "iVar10 = puVar37[1];" (assignment_expression "iVar10 = puVar37[1]" (identifier "iVar10") (= "=") (subscript_expression "puVar37[1]" (identifier "puVar37") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "local_24c = puVar37[2];" (assignment_expression "local_24c = puVar37[2]" (identifier "local_24c") (= "=") (subscript_expression "puVar37[2]" (identifier "puVar37") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_248 = puVar37[3];" (assignment_expression "local_248 = puVar37[3]" (identifier "local_248") (= "=") (subscript_expression "puVar37[3]" (identifier "puVar37") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)\n                                ;" (assignment_expression "iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)" (identifier "iVar27") (= "=") (binary_expression "puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)" (binary_expression "puVar37[3] + iVar10" (subscript_expression "puVar37[3]" (identifier "puVar37") ([ "[") (number_literal "3") (] "]")) (+ "+") (identifier "iVar10")) (+ "+") (cast_expression "(uint)CARRY4(local_24c,(uint)pcVar19)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(local_24c,(uint)pcVar19)" (identifier "CARRY4") (argument_list "(local_24c,(uint)pcVar19)" (( "(") (identifier "local_24c") (, ",") (cast_expression "(uint)pcVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar19")) () ")")))))) (; ";")) (expression_statement "iVar8 = local_218 - iVar27;" (assignment_expression "iVar8 = local_218 - iVar27" (identifier "iVar8") (= "=") (binary_expression "local_218 - iVar27" (identifier "local_218") (- "-") (identifier "iVar27"))) (; ";")) (if_statement "if ((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }" (if "if") (parenthesized_expression "((SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0)" (( "(") (binary_expression "(SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=\n                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0" (parenthesized_expression "(SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c)))" (( "(") (binary_expression "SBORROW4(local_218,iVar27) !=\n                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))" (call_expression "SBORROW4(local_218,iVar27)" (identifier "SBORROW4") (argument_list "(local_218,iVar27)" (( "(") (identifier "local_218") (, ",") (identifier "iVar27") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))" (identifier "SBORROW4") (argument_list "(iVar8,(uint)(local_21c < pcVar19 + local_24c))" (( "(") (identifier "iVar8") (, ",") (call_expression "(uint)(local_21c < pcVar19 + local_24c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_21c < pcVar19 + local_24c)" (( "(") (binary_expression "local_21c < pcVar19 + local_24c" (identifier "local_21c") (< "<") (binary_expression "pcVar19 + local_24c" (identifier "pcVar19") (+ "+") (identifier "local_24c"))) () ")"))) () ")")))) () ")")) (!= "!=") (binary_expression "(int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0" (cast_expression "(int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar8 - (uint)(local_21c < pcVar19 + local_24c))" (( "(") (binary_expression "iVar8 - (uint)(local_21c < pcVar19 + local_24c)" (identifier "iVar8") (- "-") (call_expression "(uint)(local_21c < pcVar19 + local_24c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_21c < pcVar19 + local_24c)" (( "(") (binary_expression "local_21c < pcVar19 + local_24c" (identifier "local_21c") (< "<") (binary_expression "pcVar19 + local_24c" (identifier "pcVar19") (+ "+") (identifier "local_24c"))) () ")")))) () ")"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n                                  if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }\n                                  local_24c = (int)local_21c - (int)pcVar19;\n                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);\n                                }" ({ "{") (if_statement "if ((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)\n                                  {\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }" (if "if") (parenthesized_expression "((SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)" (( "(") (binary_expression "(SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=\n                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0" (parenthesized_expression "(SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19)))" (( "(") (binary_expression "SBORROW4(local_218,iVar10) !=\n                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))" (call_expression "SBORROW4(local_218,iVar10)" (identifier "SBORROW4") (argument_list "(local_218,iVar10)" (( "(") (identifier "local_218") (, ",") (identifier "iVar10") () ")"))) (!= "!=") (call_expression "SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))" (identifier "SBORROW4") (argument_list "(local_218 - iVar10,(uint)(local_21c < pcVar19))" (( "(") (binary_expression "local_218 - iVar10" (identifier "local_218") (- "-") (identifier "iVar10")) (, ",") (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_21c < pcVar19)" (( "(") (binary_expression "local_21c < pcVar19" (identifier "local_21c") (< "<") (identifier "pcVar19")) () ")"))) () ")")))) () ")")) (!= "!=") (binary_expression "(int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0" (cast_expression "(int)((local_218 - iVar10) - (uint)(local_21c < pcVar19))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((local_218 - iVar10) - (uint)(local_21c < pcVar19))" (( "(") (binary_expression "(local_218 - iVar10) - (uint)(local_21c < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" (( "(") (binary_expression "local_218 - iVar10" (identifier "local_218") (- "-") (identifier "iVar10")) () ")")) (- "-") (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_21c < pcVar19)" (( "(") (binary_expression "local_21c < pcVar19" (identifier "local_21c") (< "<") (identifier "pcVar19")) () ")")))) () ")"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n                                    pcVar19 = local_21c;\n                                    iVar10 = local_218;\n                                  }" ({ "{") (expression_statement "pcVar19 = local_21c;" (assignment_expression "pcVar19 = local_21c" (identifier "pcVar19") (= "=") (identifier "local_21c")) (; ";")) (expression_statement "iVar10 = local_218;" (assignment_expression "iVar10 = local_218" (identifier "iVar10") (= "=") (identifier "local_218")) (; ";")) (} "}"))) (expression_statement "local_24c = (int)local_21c - (int)pcVar19;" (assignment_expression "local_24c = (int)local_21c - (int)pcVar19" (identifier "local_24c") (= "=") (binary_expression "(int)local_21c - (int)pcVar19" (cast_expression "(int)local_21c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_21c")) (- "-") (cast_expression "(int)pcVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar19")))) (; ";")) (expression_statement "local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);" (assignment_expression "local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19)" (identifier "local_248") (= "=") (binary_expression "(local_218 - iVar10) - (uint)(local_21c < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" (( "(") (binary_expression "local_218 - iVar10" (identifier "local_218") (- "-") (identifier "iVar10")) () ")")) (- "-") (call_expression "(uint)(local_21c < pcVar19)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_21c < pcVar19)" (( "(") (binary_expression "local_21c < pcVar19" (identifier "local_21c") (< "<") (identifier "pcVar19")) () ")"))))) (; ";")) (} "}"))) (expression_statement "local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);" (assignment_expression "local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264)" (identifier "local_254") (= "=") (cast_expression "(code *)(((int)pcVar19 - (int)local_26c) - local_264)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(((int)pcVar19 - (int)local_26c) - local_264)" (( "(") (binary_expression "((int)pcVar19 - (int)local_26c) - local_264" (parenthesized_expression "((int)pcVar19 - (int)local_26c)" (( "(") (binary_expression "(int)pcVar19 - (int)local_26c" (cast_expression "(int)pcVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar19")) (- "-") (cast_expression "(int)local_26c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_26c"))) () ")")) (- "-") (identifier "local_264")) () ")")))) (; ";")) (expression_statement "local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  );" (assignment_expression "local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (identifier "local_250") (= "=") (binary_expression "(((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260) -\n                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (parenthesized_expression "(((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260)" (( "(") (binary_expression "((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -\n                                            local_260" (parenthesized_expression "((iVar10 - local_268) - (uint)(pcVar19 < local_26c))" (( "(") (binary_expression "(iVar10 - local_268) - (uint)(pcVar19 < local_26c)" (parenthesized_expression "(iVar10 - local_268)" (( "(") (binary_expression "iVar10 - local_268" (identifier "iVar10") (- "-") (identifier "local_268")) () ")")) (- "-") (call_expression "(uint)(pcVar19 < local_26c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(pcVar19 < local_26c)" (( "(") (binary_expression "pcVar19 < local_26c" (identifier "pcVar19") (< "<") (identifier "local_26c")) () ")")))) () ")")) (- "-") (identifier "local_260")) () ")")) (- "-") (call_expression "(uint)((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((uint)((int)pcVar19 - (int)local_26c) < local_264\n                                                  )" (( "(") (binary_expression "(uint)((int)pcVar19 - (int)local_26c) < local_264" (call_expression "(uint)((int)pcVar19 - (int)local_26c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)pcVar19 - (int)local_26c)" (( "(") (binary_expression "(int)pcVar19 - (int)local_26c" (cast_expression "(int)pcVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar19")) (- "-") (cast_expression "(int)local_26c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_26c"))) () ")"))) (< "<") (identifier "local_264")) () ")"))))) (; ";")) (expression_statement "local_20c = (byte *)((uint)local_20c & 0xffffff00);" (assignment_expression "local_20c = (byte *)((uint)local_20c & 0xffffff00)" (identifier "local_20c") (= "=") (cast_expression "(byte *)((uint)local_20c & 0xffffff00)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_20c & 0xffffff00)" (( "(") (binary_expression "(uint)local_20c & 0xffffff00" (cast_expression "(uint)local_20c" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_20c")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (if_statement "if (local_250 != 0 || local_254 != (code *)0x0) {\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }" (if "if") (parenthesized_expression "(local_250 != 0 || local_254 != (code *)0x0)" (( "(") (binary_expression "local_250 != 0 || local_254 != (code *)0x0" (binary_expression "local_250 != 0" (identifier "local_250") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_254 != (code *)0x0" (identifier "local_254") (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")")) (compound_statement "{\n                                  *(undefined4 *)(puVar29 + -4) = 0;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(code **)(puVar29 + -0xc) = pcVar19;\n                                  *(undefined1 **)(puVar29 + -0x10) = local_208;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;\n                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));\n                                  if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }\n                                  if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }\n                                  *(int *)(puVar29 + -0xc) = local_250;\n                                  *(code **)(puVar29 + -0x10) = local_254;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;\n                                  cVar6 = FUN_000150b0();\n                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);\n                                  if (cVar6 != '\0') goto LAB_00019ae0;\nLAB_00019cf7:\n                                  ppuVar28 = local_280;\n                                  *(int *)(puVar29 + -0x10) = local_1bc;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;\n                                  free(*(void **)(puVar29 + -0x10));\n                                  bVar25 = 0;\n                                  goto LAB_00018028;\n                                }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(code **)(puVar29 + -0xc) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -0xc) = pcVar19" (pointer_expression "*(code **)(puVar29 + -0xc)" (* "*") (cast_expression "(code **)(puVar29 + -0xc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ca8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ca8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19ca8")) (; ";")) (expression_statement "_Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4));" (assignment_expression "_Var41 = lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" (identifier "_Var41") (= "=") (call_expression "lseek64(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" (identifier "lseek64") (argument_list "(*(int *)(puVar29 + -0x10),\n                                                   *(__off64_t *)(puVar29 + -0xc),\n                                                   *(int *)(puVar29 + -4))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__off64_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__off64_t *" (type_identifier "__off64_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) () ")")))) (; ";")) (if_statement "if (_Var41 < 0) {\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }" (if "if") (parenthesized_expression "(_Var41 < 0)" (( "(") (binary_expression "_Var41 < 0" (identifier "_Var41") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                                    *(int *)(puVar29 + -4) = iVar10;\n                                    ppuVar28 = local_280;\n                                    *(int *)(puVar29 + -8) = iVar10;\n                                    *(char **)(puVar29 + -0xc) = local_200;\n                                    *(undefined4 *)(puVar29 + -0x10) = 4;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;\n                                    uVar11 = FUN_00020540();\n                                    *(undefined4 *)(puVar29 + -8) = 5;\n                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);\nLAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                                    *(undefined4 *)(puVar29 + -0x10) = 0;\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;\n                                    uVar12 = dcgettext();\n                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;\n                                    piVar14 = __errno_location();\n                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                    *(int *)(puVar29 + -0x1c) = *piVar14;\n                                    *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;\n                                    error();\n                                  }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" (identifier "ppuVar28") (= "=") (identifier "local_280")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f22;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f22" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19f22")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b)" (identifier "ppuVar28") (= "=") (cast_expression "(undefined **)((int)ppuVar28 + -0xb20b)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)ppuVar28 + -0xb20b)" (( "(") (binary_expression "(int)ppuVar28 + -0xb20b" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb20b")) () ")")))) (; ";")) (labeled_statement "LAB_00019f2f:\n                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;" (statement_identifier "LAB_00019f2f") (: ":") (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined ***)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "ppuVar28")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f37;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f37" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19f37")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19f3e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19f3e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19f3e")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019f49;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019f49" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00019f49" (& "&") (identifier "UNK_00019f49"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_274 == 1) {\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }" (if "if") (parenthesized_expression "(local_274 == 1)" (( "(") (binary_expression "local_274 == 1" (identifier "local_274") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;\n                                    cVar6 = FUN_000149e0();\n                                    if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }\n                                    pcVar24 = (code *)0x0;\n                                    goto LAB_00019af3;\n                                  }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19d2c;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19d2c" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x19d2c")) (; ";")) (expression_statement "cVar6 = FUN_000149e0();" (assignment_expression "cVar6 = FUN_000149e0()" (identifier "cVar6") (= "=") (call_expression "FUN_000149e0()" (identifier "FUN_000149e0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 == '\0') {\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                                      *(code **)(puVar29 + -4) = pcVar19;\n                                      ppuVar28 = local_280;\n                                      *(char **)(puVar29 + -8) = local_1f8;\n                                      *(undefined4 *)(puVar29 + -0xc) = 3;\n                                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;\n                                      uVar11 = FUN_00020700();\n                                      *(undefined4 *)(puVar29 + -8) = 5;\n                                      ppuVar28 = ppuVar28 + -0x2c19;\n                                      goto LAB_00019f2f;\n                                    }" ({ "{") (expression_statement "*(code **)(puVar29 + -4) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -4) = pcVar19" (pointer_expression "*(code **)(puVar29 + -4)" (* "*") (cast_expression "(code **)(puVar29 + -4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" (identifier "ppuVar28") (= "=") (identifier "local_280")) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a193;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a193" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a193")) (; ";")) (expression_statement "uVar11 = FUN_00020700();" (assignment_expression "uVar11 = FUN_00020700()" (identifier "uVar11") (= "=") (call_expression "FUN_00020700()" (identifier "FUN_00020700") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "ppuVar28 = ppuVar28 + -0x2c19;" (assignment_expression "ppuVar28 = ppuVar28 + -0x2c19" (identifier "ppuVar28") (= "=") (binary_expression "ppuVar28 + -0x2c19" (identifier "ppuVar28") (+ "+") (number_literal "-0x2c19"))) (; ";")) (goto_statement "goto LAB_00019f2f;" (goto "goto") (statement_identifier "LAB_00019f2f") (; ";")) (} "}"))) (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" (identifier "pcVar24") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_00019af3;" (goto "goto") (statement_identifier "LAB_00019af3") (; ";")) (} "}"))) (expression_statement "*(int *)(puVar29 + -0xc) = local_250;" (assignment_expression "*(int *)(puVar29 + -0xc) = local_250" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_250")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x10) = local_254;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_254" (pointer_expression "*(code **)(puVar29 + -0x10)" (* "*") (cast_expression "(code **)(puVar29 + -0x10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_254")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ce6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ce6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19ce6")) (; ";")) (expression_statement "cVar6 = FUN_000150b0();" (assignment_expression "cVar6 = FUN_000150b0()" (identifier "cVar6") (= "=") (call_expression "FUN_000150b0()" (identifier "FUN_000150b0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6)" (identifier "local_20c") (= "=") (cast_expression "(byte *)CONCAT31(local_20c._1_3_,cVar6)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_20c._1_3_,cVar6)" (identifier "CONCAT31") (argument_list "(local_20c._1_3_,cVar6)" (( "(") (field_expression "local_20c._1_3_" (identifier "local_20c") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "cVar6") () ")"))))) (; ";")) (if_statement "if (cVar6 != '\0') goto LAB_00019ae0;" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00019ae0;" (goto "goto") (statement_identifier "LAB_00019ae0") (; ";"))) (labeled_statement "LAB_00019cf7:\n                                  ppuVar28 = local_280;" (statement_identifier "LAB_00019cf7") (: ":") (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" (identifier "ppuVar28") (= "=") (identifier "local_280")) (; ";"))) (expression_statement "*(int *)(puVar29 + -0x10) = local_1bc;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_1bc" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1bc")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19d0d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19d0d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19d0d")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00018028;" (goto "goto") (statement_identifier "LAB_00018028") (; ";")) (} "}"))) (labeled_statement "LAB_00019ae0:\n                                pcVar24 = (code *)0x0;" (statement_identifier "LAB_00019ae0") (: ":") (expression_statement "pcVar24 = (code *)0x0;" (assignment_expression "pcVar24 = (code *)0x0" (identifier "pcVar24") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (if_statement "if (local_274 == 3) {\n                                  pcVar24 = local_25c;\n                                }" (if "if") (parenthesized_expression "(local_274 == 3)" (( "(") (binary_expression "local_274 == 3" (identifier "local_274") (== "==") (number_literal "3")) () ")")) (compound_statement "{\n                                  pcVar24 = local_25c;\n                                }" ({ "{") (expression_statement "pcVar24 = local_25c;" (assignment_expression "pcVar24 = local_25c" (identifier "pcVar24") (= "=") (identifier "local_25c")) (; ";")) (} "}"))) (labeled_statement "LAB_00019af3:\n                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;" (statement_identifier "LAB_00019af3") (: ":") (expression_statement "*(undefined1 **)(puVar29 + -0x10) = &local_1dd;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = &local_1dd" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_1dd" (& "&") (identifier "local_1dd"))) (; ";"))) (expression_statement "*(uint **)(puVar29 + -0x14) = &local_1dc;" (assignment_expression "*(uint **)(puVar29 + -0x14) = &local_1dc" (pointer_expression "*(uint **)(puVar29 + -0x14)" (* "*") (cast_expression "(uint **)(puVar29 + -0x14)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "&local_1dc" (& "&") (identifier "local_1dc"))) (; ";")) (expression_statement "*(int *)(puVar29 + -0x18) = local_248;" (assignment_expression "*(int *)(puVar29 + -0x18) = local_248" (pointer_expression "*(int *)(puVar29 + -0x18)" (* "*") (cast_expression "(int *)(puVar29 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_248")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x1c) = local_24c;" (assignment_expression "*(uint *)(puVar29 + -0x1c) = local_24c" (pointer_expression "*(uint *)(puVar29 + -0x1c)" (* "*") (cast_expression "(uint *)(puVar29 + -0x1c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_24c")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x24) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x24) = local_200" (pointer_expression "*(char **)(puVar29 + -0x24)" (* "*") (cast_expression "(char **)(puVar29 + -0x24)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x28) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x28) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x28)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x2c) = pcVar24;" (assignment_expression "*(code **)(puVar29 + -0x2c) = pcVar24" (pointer_expression "*(code **)(puVar29 + -0x2c)" (* "*") (cast_expression "(code **)(puVar29 + -0x2c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "pcVar24")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x30) = local_258;" (assignment_expression "*(code **)(puVar29 + -0x30) = local_258" (pointer_expression "*(code **)(puVar29 + -0x30)" (* "*") (cast_expression "(code **)(puVar29 + -0x30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_258")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x19b3c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x19b3c" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x19b3c")) (; ";")) (expression_statement "cVar6 = FUN_000151c0();" (assignment_expression "cVar6 = FUN_000151c0()" (identifier "cVar6") (= "=") (call_expression "FUN_000151c0()" (identifier "FUN_000151c0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 == '\0') goto LAB_00019cf7;" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00019cf7;" (goto "goto") (statement_identifier "LAB_00019cf7") (; ";"))) (expression_statement "local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc);" (assignment_expression "local_250 = iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc)" (identifier "local_250") (= "=") (binary_expression "iVar10 + local_1d8 +\n                                            (uint)CARRY4((uint)pcVar19,local_1dc)" (binary_expression "iVar10 + local_1d8" (identifier "iVar10") (+ "+") (identifier "local_1d8")) (+ "+") (cast_expression "(uint)CARRY4((uint)pcVar19,local_1dc)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4((uint)pcVar19,local_1dc)" (identifier "CARRY4") (argument_list "((uint)pcVar19,local_1dc)" (( "(") (cast_expression "(uint)pcVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pcVar19")) (, ",") (identifier "local_1dc") () ")")))))) (; ";")) (expression_statement "local_254 = pcVar19 + local_1dc;" (assignment_expression "local_254 = pcVar19 + local_1dc" (identifier "local_254") (= "=") (binary_expression "pcVar19 + local_1dc" (identifier "pcVar19") (+ "+") (identifier "local_1dc"))) (; ";")) (expression_statement "uVar38 = (byte)local_20c;" (assignment_expression "uVar38 = (byte)local_20c" (identifier "uVar38") (= "=") (cast_expression "(byte)local_20c" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_20c"))) (; ";")) (if_statement "if (local_1d8 != 0 || local_1dc != 0) {\n                                  uVar38 = local_1dd;\n                                }" (if "if") (parenthesized_expression "(local_1d8 != 0 || local_1dc != 0)" (( "(") (binary_expression "local_1d8 != 0 || local_1dc != 0" (binary_expression "local_1d8 != 0" (identifier "local_1d8") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_1dc != 0" (identifier "local_1dc") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n                                  uVar38 = local_1dd;\n                                }" ({ "{") (expression_statement "uVar38 = local_1dd;" (assignment_expression "uVar38 = local_1dd" (identifier "uVar38") (= "=") (identifier "local_1dd")) (; ";")) (} "}"))) (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38)" (identifier "local_20c") (= "=") (cast_expression "(byte *)CONCAT31(local_20c._1_3_,uVar38)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_20c._1_3_,uVar38)" (identifier "CONCAT31") (argument_list "(local_20c._1_3_,uVar38)" (( "(") (field_expression "local_20c._1_3_" (identifier "local_20c") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "uVar38") () ")"))))) (; ";")) (if_statement "if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {\n                                  local_1bf = '\x01';\n                                  break;\n                                }" (if "if") (parenthesized_expression "(local_250 == local_218 && pcVar19 + local_1dc == local_21c)" (( "(") (binary_expression "local_250 == local_218 && pcVar19 + local_1dc == local_21c" (binary_expression "local_250 == local_218" (identifier "local_250") (== "==") (identifier "local_218")) (&& "&&") (binary_expression "pcVar19 + local_1dc == local_21c" (binary_expression "pcVar19 + local_1dc" (identifier "pcVar19") (+ "+") (identifier "local_1dc")) (== "==") (identifier "local_21c"))) () ")")) (compound_statement "{\n                                  local_1bf = '\x01';\n                                  break;\n                                }" ({ "{") (expression_statement "local_1bf = '\x01';" (assignment_expression "local_1bf = '\x01'" (identifier "local_1bf") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "local_26c = pcVar19;" (assignment_expression "local_26c = pcVar19" (identifier "local_26c") (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "local_234 = (stat64 *)((int)&local_234->st_dev + 1);" (assignment_expression "local_234 = (stat64 *)((int)&local_234->st_dev + 1)" (identifier "local_234") (= "=") (cast_expression "(stat64 *)((int)&local_234->st_dev + 1)" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_234->st_dev + 1)" (( "(") (binary_expression "(int)&local_234->st_dev + 1" (cast_expression "(int)&local_234->st_dev" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_234->st_dev" (& "&") (field_expression "local_234->st_dev" (identifier "local_234") (-> "->") (field_identifier "st_dev")))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "local_268 = iVar10;" (assignment_expression "local_268 = iVar10" (identifier "local_268") (= "=") (identifier "iVar10")) (; ";")) (expression_statement "local_264 = local_24c;" (assignment_expression "local_264 = local_24c" (identifier "local_264") (= "=") (identifier "local_24c")) (; ";")) (expression_statement "local_260 = local_248;" (assignment_expression "local_260 = local_248" (identifier "local_260") (= "=") (identifier "local_248")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_234 < local_1c4)" (( "(") (binary_expression "local_234 < local_1c4" (identifier "local_234") (< "<") (identifier "local_1c4")) () ")")) (; ";")) (} "}"))) (expression_statement "*(int *)(puVar29 + -0x10) = local_1bc;" (assignment_expression "*(int *)(puVar29 + -0x10) = local_1bc" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1bc")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1969a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1969a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1969a")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (expression_statement "local_1bc = 0;" (assignment_expression "local_1bc = 0" (identifier "local_1bc") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1c4 = (stat64 *)0x0;" (assignment_expression "local_1c4 = (stat64 *)0x0" (identifier "local_1c4") (= "=") (cast_expression "(stat64 *)0x0" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar11 = extraout_ECX_05;" (assignment_expression "uVar11 = extraout_ECX_05" (identifier "uVar11") (= "=") (identifier "extraout_ECX_05")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_1bf == '\0')" (( "(") (binary_expression "local_1bf == '\0'" (identifier "local_1bf") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (; ";")) (expression_statement "ppuVar28 = local_280;" (assignment_expression "ppuVar28 = local_280" (identifier "ppuVar28") (= "=") (identifier "local_280")) (; ";")) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" (identifier "bVar3") (= "=") (true "true")) (; ";")) (if_statement "if ((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }" (if "if") (parenthesized_expression "((SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0)" (( "(") (binary_expression "(SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==\n                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0" (parenthesized_expression "(SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c)))" (( "(") (binary_expression "SBORROW4(local_250,local_218) !=\n                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))" (call_expression "SBORROW4(local_250,local_218)" (identifier "SBORROW4") (argument_list "(local_250,local_218)" (( "(") (identifier "local_250") (, ",") (identifier "local_218") () ")"))) (!= "!=") (call_expression "SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))" (identifier "SBORROW4") (argument_list "(local_250 - local_218,(uint)(local_254 < local_21c))" (( "(") (binary_expression "local_250 - local_218" (identifier "local_250") (- "-") (identifier "local_218")) (, ",") (call_expression "(uint)(local_254 < local_21c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_254 < local_21c)" (( "(") (binary_expression "local_254 < local_21c" (identifier "local_254") (< "<") (identifier "local_21c")) () ")"))) () ")")))) () ")")) (== "==") (binary_expression "(int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0" (cast_expression "(int)((local_250 - local_218) - (uint)(local_254 < local_21c))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((local_250 - local_218) - (uint)(local_254 < local_21c))" (( "(") (binary_expression "(local_250 - local_218) - (uint)(local_254 < local_21c)" (parenthesized_expression "(local_250 - local_218)" (( "(") (binary_expression "local_250 - local_218" (identifier "local_250") (- "-") (identifier "local_218")) () ")")) (- "-") (call_expression "(uint)(local_254 < local_21c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_254 < local_21c)" (( "(") (binary_expression "local_254 < local_21c" (identifier "local_254") (< "<") (identifier "local_21c")) () ")")))) () ")"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n                            bVar3 = false;\n                            if ((byte)local_20c == '\0') goto LAB_00017ed4;\n                          }" ({ "{") (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" (identifier "bVar3") (= "=") (false "false")) (; ";")) (if_statement "if ((byte)local_20c == '\0') goto LAB_00017ed4;" (if "if") (parenthesized_expression "((byte)local_20c == '\0')" (( "(") (binary_expression "(byte)local_20c == '\0'" (cast_expression "(byte)local_20c" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_20c")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00017ed4;" (goto "goto") (statement_identifier "LAB_00017ed4") (; ";"))) (} "}"))) (if_statement "if (local_274 == 1) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }\n                          else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" (if "if") (parenthesized_expression "(local_274 == 1)" (( "(") (binary_expression "local_274 == 1" (identifier "local_274") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = 0x1a279;\n                            iVar10 = FUN_000149e0();\n                            uVar11 = extraout_ECX_14;\n                            if ((char)iVar10 == '\0') goto LAB_00019fca;\n                          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a279;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a279" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1a279")) (; ";")) (expression_statement "iVar10 = FUN_000149e0();" (assignment_expression "iVar10 = FUN_000149e0()" (identifier "iVar10") (= "=") (call_expression "FUN_000149e0()" (identifier "FUN_000149e0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_14;" (assignment_expression "uVar11 = extraout_ECX_14" (identifier "uVar11") (= "=") (identifier "extraout_ECX_14")) (; ";")) (if_statement "if ((char)iVar10 == '\0') goto LAB_00019fca;" (if "if") (parenthesized_expression "((char)iVar10 == '\0')" (( "(") (binary_expression "(char)iVar10 == '\0'" (cast_expression "(char)iVar10" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "iVar10")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00019fca;" (goto "goto") (statement_identifier "LAB_00019fca") (; ";"))) (} "}")) (else_clause "else {\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" (else "else") (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = uVar11;\n                            *(int *)(puVar29 + -8) = local_218;\n                            *(code **)(puVar29 + -0xc) = local_21c;\n                            *(int **)(puVar29 + -0x10) = local_228;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;\n                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));\n                            pcVar24 = local_21c;\n                            pcVar19 = local_254;\n                            if (iVar10 != 0) goto LAB_00019fca;\n                            uVar11 = extraout_ECX_06;\n                            if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }\n                          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = local_218;" (assignment_expression "*(int *)(puVar29 + -8) = local_218" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_218")) (; ";")) (expression_statement "*(code **)(puVar29 + -0xc) = local_21c;" (assignment_expression "*(code **)(puVar29 + -0xc) = local_21c" (pointer_expression "*(code **)(puVar29 + -0xc)" (* "*") (cast_expression "(code **)(puVar29 + -0xc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_21c")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1971b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1971b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1971b")) (; ";")) (expression_statement "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "ftruncate64(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" (identifier "ftruncate64") (argument_list "(*(int *)(puVar29 + -0x10),\n                                                 *(__off64_t *)(puVar29 + -0xc))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__off64_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__off64_t *" (type_identifier "__off64_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (expression_statement "pcVar24 = local_21c;" (assignment_expression "pcVar24 = local_21c" (identifier "pcVar24") (= "=") (identifier "local_21c")) (; ";")) (expression_statement "pcVar19 = local_254;" (assignment_expression "pcVar19 = local_254" (identifier "pcVar19") (= "=") (identifier "local_254")) (; ";")) (if_statement "if (iVar10 != 0) goto LAB_00019fca;" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00019fca;" (goto "goto") (statement_identifier "LAB_00019fca") (; ";"))) (expression_statement "uVar11 = extraout_ECX_06;" (assignment_expression "uVar11 = extraout_ECX_06" (identifier "uVar11") (= "=") (identifier "extraout_ECX_06")) (; ";")) (if_statement "if ((local_274 == 3) && (bVar3)) {\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }" (if "if") (parenthesized_expression "((local_274 == 3) && (bVar3))" (( "(") (binary_expression "(local_274 == 3) && (bVar3)" (parenthesized_expression "(local_274 == 3)" (( "(") (binary_expression "local_274 == 3" (identifier "local_274") (== "==") (number_literal "3")) () ")")) (&& "&&") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")"))) () ")")) (compound_statement "{\n                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;\n                              iVar10 = local_250;\n                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;\n                              *(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);\n                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;\n                              *(int *)(puVar29 + -0x14) = iVar10;\n                              *(code **)(puVar29 + -0x18) = pcVar19;\n                              *(undefined4 *)(puVar29 + -0x1c) = 3;\n                              *(int **)(puVar29 + -0x20) = local_228;\n                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;\n                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));\n                              uVar11 = extraout_ECX_07;\n                              if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }\n                            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = extraout_EDX_00;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = extraout_EDX_00" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "extraout_EDX_00")) (; ";")) (expression_statement "iVar10 = local_250;" (assignment_expression "iVar10 = local_250" (identifier "iVar10") (= "=") (identifier "local_250")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = extraout_EDX_00;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = extraout_EDX_00" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "extraout_EDX_00")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);" (assignment_expression "*(uint *)(puVar29 + -0xc) =\n                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19)" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(local_218 - iVar10) - (uint)(pcVar24 < pcVar19)" (parenthesized_expression "(local_218 - iVar10)" (( "(") (binary_expression "local_218 - iVar10" (identifier "local_218") (- "-") (identifier "iVar10")) () ")")) (- "-") (call_expression "(uint)(pcVar24 < pcVar19)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(pcVar24 < pcVar19)" (( "(") (binary_expression "pcVar24 < pcVar19" (identifier "pcVar24") (< "<") (identifier "pcVar19")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;" (assignment_expression "*(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "(int)pcVar24 - (int)pcVar19" (cast_expression "(int)pcVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar24")) (- "-") (cast_expression "(int)pcVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pcVar19")))) (; ";")) (expression_statement "*(int *)(puVar29 + -0x14) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x14) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x14)" (* "*") (cast_expression "(int *)(puVar29 + -0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x18) = pcVar19;" (assignment_expression "*(code **)(puVar29 + -0x18) = pcVar19" (pointer_expression "*(code **)(puVar29 + -0x18)" (* "*") (cast_expression "(code **)(puVar29 + -0x18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x20) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x20) = local_228" (pointer_expression "*(int **)(puVar29 + -0x20)" (* "*") (cast_expression "(int **)(puVar29 + -0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1976c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1976c" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x1976c")) (; ";")) (expression_statement "iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10));" (assignment_expression "iVar8 = fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" (identifier "iVar8") (= "=") (call_expression "fallocate64(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" (identifier "fallocate64") (argument_list "(*(int *)(puVar29 + -0x20),\n                                                  *(int *)(puVar29 + -0x1c),\n                                                  *(__off64_t *)(puVar29 + -0x18),\n                                                  *(__off64_t *)(puVar29 + -0x10))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x20)" (* "*") (cast_expression "(int *)(puVar29 + -0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (, ",") (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (, ",") (pointer_expression "*(__off64_t *)(puVar29 + -0x18)" (* "*") (cast_expression "(__off64_t *)(puVar29 + -0x18)" (( "(") (type_descriptor "__off64_t *" (type_identifier "__off64_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (, ",") (pointer_expression "*(__off64_t *)(puVar29 + -0x10)" (* "*") (cast_expression "(__off64_t *)(puVar29 + -0x10)" (( "(") (type_descriptor "__off64_t *" (type_identifier "__off64_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_07;" (assignment_expression "uVar11 = extraout_ECX_07" (identifier "uVar11") (= "=") (identifier "extraout_ECX_07")) (; ";")) (if_statement "if (iVar8 < 0) {\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }" (if "if") (parenthesized_expression "(iVar8 < 0)" (( "(") (binary_expression "iVar8 < 0" (identifier "iVar8") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                                *(undefined4 *)(puVar29 + -4) = 0x1977c;\n                                piVar14 = __errno_location();\n                                uVar11 = extraout_ECX_08;\n                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }\n                              }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1977c;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1977c" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1977c")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_08;" (assignment_expression "uVar11 = extraout_ECX_08" (identifier "uVar11") (= "=") (identifier "extraout_ECX_08")) (; ";")) (if_statement "if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }" (if "if") (parenthesized_expression "((*piVar14 != 0x26) && (*piVar14 != 0x5f))" (( "(") (binary_expression "(*piVar14 != 0x26) && (*piVar14 != 0x5f)" (parenthesized_expression "(*piVar14 != 0x26)" (( "(") (binary_expression "*piVar14 != 0x26" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "0x26")) () ")")) (&& "&&") (parenthesized_expression "(*piVar14 != 0x5f)" (( "(") (binary_expression "*piVar14 != 0x5f" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "0x5f")) () ")"))) () ")")) (compound_statement "{\n                                  *(int *)(puVar29 + -4) = iVar10;\n                                  *(int *)(puVar29 + -8) = iVar10;\n                                  *(char **)(puVar29 + -0xc) = local_1f8;\n                                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;\n                                  uVar11 = FUN_00020540();\n                                  *(undefined4 *)(puVar29 + -8) = 5;\n                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;\n                                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;\n                                  uVar12 = dcgettext();\n                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;\n                                  error();\n                                }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x197a1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x197a1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x197a1")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb1fb" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb1fb"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x197b6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x197b6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x197b6")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000197c1;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000197c1" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_000197c1" (& "&") (identifier "UNK_000197c1"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (} "}"))) (} "}")))) (goto_statement "goto LAB_00017ed4;" (goto "goto") (statement_identifier "LAB_00017ed4") (; ";")) (} "}"))) (expression_statement "local_22c = &local_1d4;" (assignment_expression "local_22c = &local_1d4" (identifier "local_22c") (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "local_25c = (code *)0x0;" (assignment_expression "local_25c = (code *)0x0" (identifier "local_25c") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar9 = (uint)(local_1f0[3] == 3);" (assignment_expression "uVar9 = (uint)(local_1f0[3] == 3)" (identifier "uVar9") (= "=") (call_expression "(uint)(local_1f0[3] == 3)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(local_1f0[3] == 3)" (( "(") (binary_expression "local_1f0[3] == 3" (subscript_expression "local_1f0[3]" (identifier "local_1f0") ([ "[") (number_literal "3") (] "]")) (== "==") (number_literal "3")) () ")")))) (; ";")) (} "}")))) (labeled_statement "LAB_00017e78:\n                      *(uint **)(puVar29 + -0x10) = &local_1dc;" (statement_identifier "LAB_00017e78") (: ":") (expression_statement "*(uint **)(puVar29 + -0x10) = &local_1dc;" (assignment_expression "*(uint **)(puVar29 + -0x10) = &local_1dc" (pointer_expression "*(uint **)(puVar29 + -0x10)" (* "*") (cast_expression "(uint **)(puVar29 + -0x10)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "&local_1dc" (& "&") (identifier "local_1dc"))) (; ";"))) (expression_statement "*(__ino_t **)(puVar29 + -0x14) = local_22c;" (assignment_expression "*(__ino_t **)(puVar29 + -0x14) = local_22c" (pointer_expression "*(__ino_t **)(puVar29 + -0x14)" (* "*") (cast_expression "(__ino_t **)(puVar29 + -0x14)" (( "(") (type_descriptor "__ino_t **" (type_identifier "__ino_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_22c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x24) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x24) = local_200" (pointer_expression "*(char **)(puVar29 + -0x24)" (* "*") (cast_expression "(char **)(puVar29 + -0x24)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x28) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x28) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x28)" (* "*") (cast_expression "(uint *)(puVar29 + -0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x28)" (( "(") (binary_expression "puVar29 + -0x28" (identifier "puVar29") (+ "+") (number_literal "-0x28")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x2c) = local_25c;" (assignment_expression "*(code **)(puVar29 + -0x2c) = local_25c" (pointer_expression "*(code **)(puVar29 + -0x2c)" (* "*") (cast_expression "(code **)(puVar29 + -0x2c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x2c)" (( "(") (binary_expression "puVar29 + -0x2c" (identifier "puVar29") (+ "+") (number_literal "-0x2c")) () ")")))) (= "=") (identifier "local_25c")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x30) = local_258;" (assignment_expression "*(code **)(puVar29 + -0x30) = local_258" (pointer_expression "*(code **)(puVar29 + -0x30)" (* "*") (cast_expression "(code **)(puVar29 + -0x30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x30)" (( "(") (binary_expression "puVar29 + -0x30" (identifier "puVar29") (+ "+") (number_literal "-0x30")) () ")")))) (= "=") (identifier "local_258")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x34) = 0x17ebc;" (assignment_expression "*(undefined4 *)(puVar29 + -0x34) = 0x17ebc" (pointer_expression "*(undefined4 *)(puVar29 + -0x34)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x34)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x34)" (( "(") (binary_expression "puVar29 + -0x34" (identifier "puVar29") (+ "+") (number_literal "-0x34")) () ")")))) (= "=") (number_literal "0x17ebc")) (; ";")) (expression_statement "uVar12 = FUN_000151c0();" (assignment_expression "uVar12 = FUN_000151c0()" (identifier "uVar12") (= "=") (call_expression "FUN_000151c0()" (identifier "FUN_000151c0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((char)uVar12 != '\0') {\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }" (if "if") (parenthesized_expression "((char)uVar12 != '\0')" (( "(") (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar12")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                        uVar11 = extraout_ECX_00;\n                        if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }\n                        goto LAB_00017ed4;\n                      }" ({ "{") (expression_statement "uVar11 = extraout_ECX_00;" (assignment_expression "uVar11 = extraout_ECX_00" (identifier "uVar11") (= "=") (identifier "extraout_ECX_00")) (; ";")) (if_statement "if ((char)local_1dc != '\0') {\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }" (if "if") (parenthesized_expression "((char)local_1dc != '\0')" (( "(") (binary_expression "(char)local_1dc != '\0'" (cast_expression "(char)local_1dc" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_1dc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                          *(undefined4 *)(puVar29 + -4) = uVar12;\n                          *(undefined4 *)(puVar29 + -8) = local_1d0;\n                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;\n                          *(int **)(puVar29 + -0x10) = local_228;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;\n                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));\n                          uVar11 = extraout_ECX_13;\n                          if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }\n                        }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1d0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1d0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1d0")) (; ";")) (expression_statement "*(__ino_t *)(puVar29 + -0xc) = local_1d4;" (assignment_expression "*(__ino_t *)(puVar29 + -0xc) = local_1d4" (pointer_expression "*(__ino_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__ino_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__ino_t *" (type_identifier "__ino_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1d4")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fbf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fbf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19fbf")) (; ";")) (expression_statement "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "ftruncate64(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" (identifier "ftruncate64") (argument_list "(*(int *)(puVar29 + -0x10),\n                                               *(__off64_t *)(puVar29 + -0xc))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(__off64_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__off64_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__off64_t *" (type_identifier "__off64_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_13;" (assignment_expression "uVar11 = extraout_ECX_13" (identifier "uVar11") (= "=") (identifier "extraout_ECX_13")) (; ";")) (if_statement "if (iVar10 < 0) {\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;\n                            *(int *)(puVar29 + -8) = iVar10;\n                            *(char **)(puVar29 + -0xc) = local_1f8;\n                            *(undefined4 *)(puVar29 + -0x10) = 4;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;\n                            uVar11 = FUN_00020540();\n                            *(undefined4 *)(puVar29 + -8) = 5;\n                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);\nLAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;\n                            *(undefined4 *)(puVar29 + -0x10) = 0;\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;\n                            uVar12 = dcgettext();\n                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;\n                            piVar14 = __errno_location();\n                            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                            *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                            *(int *)(puVar29 + -0x1c) = *piVar14;\n                            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;\n                            error();\n                          }" ({ "{") (labeled_statement "LAB_00019fca:\n                            *(int *)(puVar29 + -4) = iVar10;" (statement_identifier "LAB_00019fca") (: ":") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";"))) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fd9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fd9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19fd9")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);" (assignment_expression "ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053)" (identifier "ppuVar28") (= "=") (cast_expression "(undefined **)((int)ppuVar28 + -0xb053)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)ppuVar28 + -0xb053)" (( "(") (binary_expression "(int)ppuVar28 + -0xb053" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb053")) () ")")))) (; ";")) (labeled_statement "LAB_00019fe6:\n                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;" (statement_identifier "LAB_00019fe6") (: ":") (expression_statement "*(undefined ***)(puVar29 + -0xc) = ppuVar28;" (assignment_expression "*(undefined ***)(puVar29 + -0xc) = ppuVar28" (pointer_expression "*(undefined ***)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined ***)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "ppuVar28")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19fee;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19fee" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19fee")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ff5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ff5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19ff5")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a002;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a002" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001a002" (& "&") (identifier "UNK_0001a002"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_00017ed4;" (goto "goto") (statement_identifier "LAB_00017ed4") (; ";")) (} "}"))) (labeled_statement "LAB_000197c4:\n                      bVar25 = 0;" (statement_identifier "LAB_000197c4") (: ":") (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";"))) (goto_statement "goto LAB_00018028;" (goto "goto") (statement_identifier "LAB_00018028") (; ";")) (} "}"))) (labeled_statement "LAB_000194e2:\n                    local_220 = (code *)0x0;" (statement_identifier "LAB_000194e2") (: ":") (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" (identifier "local_220") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (labeled_statement "LAB_00017ed4:\n                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" (statement_identifier "LAB_00017ed4") (: ":") (if_statement "if (*(char *)((int)local_1f0 + 0x1f) != '\0') {\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1f) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1f) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1f)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1f)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1f)" (( "(") (binary_expression "(int)local_1f0 + 0x1f" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1f")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                      local_30 = local_174;\n                      local_2c = local_170;\n                      local_28 = local_16c;\n                      local_24 = local_168;\n                      *(long *)(puVar29 + -4) = local_168;\n                      *(__time_t **)(puVar29 + -8) = &local_30;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(int **)(puVar29 + -0x10) = local_228;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;\n                      iVar10 = FUN_000220c0();\n                      uVar11 = extraout_ECX_09;\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }\n                    }" ({ "{") (expression_statement "local_30 = local_174;" (assignment_expression "local_30 = local_174" (identifier "local_30") (= "=") (identifier "local_174")) (; ";")) (expression_statement "local_2c = local_170;" (assignment_expression "local_2c = local_170" (identifier "local_2c") (= "=") (identifier "local_170")) (; ";")) (expression_statement "local_28 = local_16c;" (assignment_expression "local_28 = local_16c" (identifier "local_28") (= "=") (identifier "local_16c")) (; ";")) (expression_statement "local_24 = local_168;" (assignment_expression "local_24 = local_168" (identifier "local_24") (= "=") (identifier "local_168")) (; ";")) (expression_statement "*(long *)(puVar29 + -4) = local_168;" (assignment_expression "*(long *)(puVar29 + -4) = local_168" (pointer_expression "*(long *)(puVar29 + -4)" (* "*") (cast_expression "(long *)(puVar29 + -4)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_168")) (; ";")) (expression_statement "*(__time_t **)(puVar29 + -8) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -8) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -8)" (* "*") (cast_expression "(__time_t **)(puVar29 + -8)" (( "(") (type_descriptor "__time_t **" (type_identifier "__time_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1988f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1988f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1988f")) (; ";")) (expression_statement "iVar10 = FUN_000220c0();" (assignment_expression "iVar10 = FUN_000220c0()" (identifier "iVar10") (= "=") (call_expression "FUN_000220c0()" (identifier "FUN_000220c0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_09;" (assignment_expression "uVar11 = extraout_ECX_09" (identifier "uVar11") (= "=") (identifier "extraout_ECX_09")) (; ";")) (if_statement "if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x10) = 4;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;\n                        uVar11 = FUN_00020540();\n                        *(undefined4 *)(puVar29 + -8) = 5;\n                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n                        *(undefined4 *)(puVar29 + -0x10) = 0;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;\n                        uVar12 = dcgettext();\n                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;\n                        piVar14 = __errno_location();\n                        *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                        *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                        *(int *)(puVar29 + -0x1c) = *piVar14;\n                        *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;\n                        error();\n                      }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198a9;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198a9" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x198a9")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb03f" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb03f"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198be;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198be" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x198be")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x198c5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x198c5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x198c5")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000198d0;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000198d0" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_000198d0" (& "&") (identifier "UNK_000198d0"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))\n                    {\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n                       ((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1d) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1d)" (( "(") (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)))" (( "(") (parenthesized_expression "(local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))" (( "(") (binary_expression "local_1b4._24_4_ != local_94.st_uid ||\n                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)" (binary_expression "local_1b4._24_4_ != local_94.st_uid" (field_expression "local_1b4._24_4_" (identifier "local_1b4") (. ".") (field_identifier "_24_4_")) (!= "!=") (field_expression "local_94.st_uid" (identifier "local_94") (. ".") (field_identifier "st_uid"))) (|| "||") (parenthesized_expression "(local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid)" (( "(") (comma_expression "local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid" (assignment_expression "local_94.st_uid = local_94.st_gid" (field_expression "local_94.st_uid" (identifier "local_94") (. ".") (field_identifier "st_uid")) (= "=") (field_expression "local_94.st_gid" (identifier "local_94") (. ".") (field_identifier "st_gid"))) (, ",") (binary_expression "local_1b4._28_4_ != local_94.st_gid" (field_expression "local_1b4._28_4_" (identifier "local_1b4") (. ".") (field_identifier "_28_4_")) (!= "!=") (field_expression "local_94.st_gid" (identifier "local_94") (. ".") (field_identifier "st_gid")))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;\n                      uVar9 = (uint)local_1f4 & 0xff;\n                      *(stat64 **)(puVar29 + -8) = local_240;\n                      *(uint *)(puVar29 + -0xc) = uVar9;\n                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;\n                      iVar10 = FUN_00015b60();\n                      if (iVar10 == -1) goto LAB_000197c4;\n                      uVar11 = extraout_ECX_01;\n                      if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }\n                    }" ({ "{") (expression_statement "*(__uid_t *)(puVar29 + -4) = local_94.st_uid;" (assignment_expression "*(__uid_t *)(puVar29 + -4) = local_94.st_uid" (pointer_expression "*(__uid_t *)(puVar29 + -4)" (* "*") (cast_expression "(__uid_t *)(puVar29 + -4)" (( "(") (type_descriptor "__uid_t *" (type_identifier "__uid_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (field_expression "local_94.st_uid" (identifier "local_94") (. ".") (field_identifier "st_uid"))) (; ";")) (expression_statement "uVar9 = (uint)local_1f4 & 0xff;" (assignment_expression "uVar9 = (uint)local_1f4 & 0xff" (identifier "uVar9") (= "=") (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_1f4")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -8) = local_240;" (assignment_expression "*(stat64 **)(puVar29 + -8) = local_240" (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_240")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1b4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17f33;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17f33" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17f33")) (; ";")) (expression_statement "iVar10 = FUN_00015b60();" (assignment_expression "iVar10 = FUN_00015b60()" (identifier "iVar10") (= "=") (call_expression "FUN_00015b60()" (identifier "FUN_00015b60") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == -1) goto LAB_000197c4;" (if "if") (parenthesized_expression "(iVar10 == -1)" (( "(") (binary_expression "iVar10 == -1" (identifier "iVar10") (== "==") (number_literal "-1")) () ")")) (goto_statement "goto LAB_000197c4;" (goto "goto") (statement_identifier "LAB_000197c4") (; ";"))) (expression_statement "uVar11 = extraout_ECX_01;" (assignment_expression "uVar11 = extraout_ECX_01" (identifier "uVar11") (= "=") (identifier "extraout_ECX_01")) (; ";")) (if_statement "if (iVar10 == 0) {\n                        local_244 = local_244 & 0xfffff1ff;\n                      }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        local_244 = local_244 & 0xfffff1ff;\n                      }" ({ "{") (expression_statement "local_244 = local_244 & 0xfffff1ff;" (assignment_expression "local_244 = local_244 & 0xfffff1ff" (identifier "local_244") (= "=") (binary_expression "local_244 & 0xfffff1ff" (identifier "local_244") (& "&") (number_literal "0xfffff1ff"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) == '\0') {\nLAB_0001950b:\n                      bVar25 = 1;\n                    }\n                    else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x27) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x27)" (( "(") (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x27")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_0001950b:\n                      bVar25 = 1;\n                    }" ({ "{") (labeled_statement "LAB_0001950b:\n                      bVar25 = 1;" (statement_identifier "LAB_0001950b") (: ":") (expression_statement "bVar25 = 1;" (assignment_expression "bVar25 = 1" (identifier "bVar25") (= "=") (number_literal "1")) (; ";"))) (} "}")) (else_clause "else {\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" (else "else") (compound_statement "{\n                      piVar14 = local_1f0;\n                      if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }\n                      if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }\n                    }" ({ "{") (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (if_statement "if ((local_94.st_mode & 0x80) == 0) {\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }\n                      else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" (if "if") (parenthesized_expression "((local_94.st_mode & 0x80) == 0)" (( "(") (binary_expression "(local_94.st_mode & 0x80) == 0" (parenthesized_expression "(local_94.st_mode & 0x80)" (( "(") (binary_expression "local_94.st_mode & 0x80" (field_expression "local_94.st_mode" (identifier "local_94") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0x80")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = 0x19e80;\n                        piVar14 = (int *)geteuid();\n                        piVar23 = local_228;\n                        if (piVar14 == (int *)0x0) goto LAB_00017f67;\n                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;\n                        iVar10 = FUN_00014ac0();\n                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);\n                        *(undefined4 *)(puVar29 + -4) = uVar12;\n                        *(undefined4 *)(puVar29 + -8) = uVar12;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = piVar23;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;\n                        bVar25 = FUN_00014b00();\n                        uVar11 = extraout_ECX_12;\n                        if (bVar25 == 0) goto LAB_00017f99;\n                      }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19e80;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19e80" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x19e80")) (; ";")) (expression_statement "piVar14 = (int *)geteuid();" (assignment_expression "piVar14 = (int *)geteuid()" (identifier "piVar14") (= "=") (cast_expression "(int *)geteuid()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "geteuid()" (identifier "geteuid") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "piVar23 = local_228;" (assignment_expression "piVar23 = local_228" (identifier "piVar23") (= "=") (identifier "local_228")) (; ";")) (if_statement "if (piVar14 == (int *)0x0) goto LAB_00017f67;" (if "if") (parenthesized_expression "(piVar14 == (int *)0x0)" (( "(") (binary_expression "piVar14 == (int *)0x0" (identifier "piVar14") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00017f67;" (goto "goto") (statement_identifier "LAB_00017f67") (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19ea0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19ea0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x19ea0")) (; ";")) (expression_statement "iVar10 = FUN_00014ac0();" (assignment_expression "iVar10 = FUN_00014ac0()" (identifier "iVar10") (= "=") (call_expression "FUN_00014ac0()" (identifier "FUN_00014ac0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);" (assignment_expression "uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0)" (identifier "uVar12") (= "=") (call_expression "CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0)" (identifier "CONCAT31") (argument_list "((int3)((uint)iVar10 >> 8),iVar10 == 0)" (( "(") (call_expression "(int3)((uint)iVar10 >> 8)" (parenthesized_expression "(int3)" (( "(") (identifier "int3") () ")")) (argument_list "((uint)iVar10 >> 8)" (( "(") (binary_expression "(uint)iVar10 >> 8" (cast_expression "(uint)iVar10" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "iVar10")) (>> ">>") (number_literal "8")) () ")"))) (, ",") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = piVar23;" (assignment_expression "*(int **)(puVar29 + -0x10) = piVar23" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "piVar23")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19ec7;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19ec7" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19ec7")) (; ";")) (expression_statement "bVar25 = FUN_00014b00();" (assignment_expression "bVar25 = FUN_00014b00()" (identifier "bVar25") (= "=") (call_expression "FUN_00014b00()" (identifier "FUN_00014b00") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_12;" (assignment_expression "uVar11 = extraout_ECX_12" (identifier "uVar11") (= "=") (identifier "extraout_ECX_12")) (; ";")) (if_statement "if (bVar25 == 0) goto LAB_00017f99;" (if "if") (parenthesized_expression "(bVar25 == 0)" (( "(") (binary_expression "bVar25 == 0" (identifier "bVar25") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017f99;" (goto "goto") (statement_identifier "LAB_00017f99") (; ";"))) (} "}")) (else_clause "else {\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" (else "else") (compound_statement "{\nLAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;\n                        *(int **)(puVar29 + -8) = piVar14;\n                        *(int **)(puVar29 + -0xc) = local_1f0;\n                        *(int **)(puVar29 + -0x10) = local_228;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;\n                        uVar12 = FUN_00014b00();\n                        uVar11 = extraout_ECX_02;\n                        if ((char)uVar12 != '\0') goto LAB_0001950b;\nLAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));\n                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;\n                      }" ({ "{") (labeled_statement "LAB_00017f67:\n                        *(int **)(puVar29 + -4) = piVar14;" (statement_identifier "LAB_00017f67") (: ":") (expression_statement "*(int **)(puVar29 + -4) = piVar14;" (assignment_expression "*(int **)(puVar29 + -4) = piVar14" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "piVar14")) (; ";"))) (expression_statement "*(int **)(puVar29 + -8) = piVar14;" (assignment_expression "*(int **)(puVar29 + -8) = piVar14" (pointer_expression "*(int **)(puVar29 + -8)" (* "*") (cast_expression "(int **)(puVar29 + -8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "piVar14")) (; ";")) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17f8c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17f8c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17f8c")) (; ";")) (expression_statement "uVar12 = FUN_00014b00();" (assignment_expression "uVar12 = FUN_00014b00()" (identifier "uVar12") (= "=") (call_expression "FUN_00014b00()" (identifier "FUN_00014b00") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar11 = extraout_ECX_02;" (assignment_expression "uVar11 = extraout_ECX_02" (identifier "uVar11") (= "=") (identifier "extraout_ECX_02")) (; ";")) (if_statement "if ((char)uVar12 != '\0') goto LAB_0001950b;" (if "if") (parenthesized_expression "((char)uVar12 != '\0')" (( "(") (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar12")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001950b;" (goto "goto") (statement_identifier "LAB_0001950b") (; ";"))) (labeled_statement "LAB_00017f99:\n                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));" (statement_identifier "LAB_00017f99") (: ":") (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" (identifier "local_20c") (= "=") (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10))" (identifier "CONCAT31") (argument_list "(local_20c._1_3_,*(byte *)(local_1f0 + 10))" (( "(") (field_expression "local_20c._1_3_" (identifier "local_20c") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(byte *)(local_1f0 + 10)" (* "*") (cast_expression "(byte *)(local_1f0 + 10)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 10)" (( "(") (binary_expression "local_1f0 + 10" (identifier "local_1f0") (+ "+") (number_literal "10")) () ")")))) () ")"))))) (; ";"))) (expression_statement "bVar25 = *(byte *)(local_1f0 + 10) ^ 1;" (assignment_expression "bVar25 = *(byte *)(local_1f0 + 10) ^ 1" (identifier "bVar25") (= "=") (binary_expression "*(byte *)(local_1f0 + 10) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 10)" (* "*") (cast_expression "(byte *)(local_1f0 + 10)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 10)" (( "(") (binary_expression "local_1f0 + 10" (identifier "local_1f0") (+ "+") (number_literal "10")) () ")")))) (^ "^") (number_literal "1"))) (; ";")) (} "}")))) (if_statement "if ((char)uVar12 != '\0') {\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }" (if "if") (parenthesized_expression "((char)uVar12 != '\0')" (( "(") (binary_expression "(char)uVar12 != '\0'" (cast_expression "(char)uVar12" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar12")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;\n                        FUN_00014ac0();\n                        uVar11 = extraout_ECX_03;\n                      }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x17fd3;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x17fd3" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x17fd3")) (; ";")) (expression_statement "FUN_00014ac0();" (call_expression "FUN_00014ac0()" (identifier "FUN_00014ac0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = extraout_ECX_03;" (assignment_expression "uVar11 = extraout_ECX_03" (identifier "uVar11") (= "=") (identifier "extraout_ECX_03")) (; ";")) (} "}"))) (} "}")))) (expression_statement "piVar14 = local_1f0;" (assignment_expression "piVar14 = local_1f0" (identifier "piVar14") (= "=") (identifier "local_1f0")) (; ";")) (if_statement "if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))\n                    {\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }\n                    else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1e) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1e)" (( "(") (binary_expression "(int)local_1f0 + 0x1e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1e")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }\n                    }" ({ "{") (if_statement "if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }\n                      else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2b)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2b)" (( "(") (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2b")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);\n                        if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }\n                      }" ({ "{") (expression_statement "bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);" (assignment_expression "bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8)" (identifier "bVar40") (= "=") (binary_expression "(byte)local_1f4 & *(byte *)(local_1f0 + 8)" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (& "&") (pointer_expression "*(byte *)(local_1f0 + 8)" (* "*") (cast_expression "(byte *)(local_1f0 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 8)" (( "(") (binary_expression "local_1f0 + 8" (identifier "local_1f0") (+ "+") (number_literal "8")) () ")")))))) (; ";")) (if_statement "if (bVar40 == 0) {\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }\n                        else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" (if "if") (parenthesized_expression "(bVar40 == 0)" (( "(") (binary_expression "bVar40 == 0" (identifier "bVar40") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                          if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }\n                        }" ({ "{") (if_statement "if (local_278 != 0) {\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }" (if "if") (parenthesized_expression "(local_278 != 0)" (( "(") (binary_expression "local_278 != 0" (identifier "local_278") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;\n                            uVar9 = FUN_00015d90();\n                            if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }\n                          }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a00f;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a00f" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1a00f")) (; ";")) (expression_statement "uVar9 = FUN_00015d90();" (assignment_expression "uVar9 = FUN_00015d90()" (identifier "uVar9") (= "=") (call_expression "FUN_00015d90()" (identifier "FUN_00015d90") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((local_278 & ~uVar9) != 0) {\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }" (if "if") (parenthesized_expression "((local_278 & ~uVar9) != 0)" (( "(") (binary_expression "(local_278 & ~uVar9) != 0" (parenthesized_expression "(local_278 & ~uVar9)" (( "(") (binary_expression "local_278 & ~uVar9" (identifier "local_278") (& "&") (unary_expression "~uVar9" (~ "~") (identifier "uVar9"))) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                              *(undefined4 *)(puVar29 + -4) = 0x1a034;\n                              iVar10 = FUN_00014ac0();\n                              if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }\n                            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a034;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a034" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1a034")) (; ";")) (expression_statement "iVar10 = FUN_00014ac0();" (assignment_expression "iVar10 = FUN_00014ac0()" (identifier "iVar10") (= "=") (call_expression "FUN_00014ac0()" (identifier "FUN_00014ac0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                                *(int *)(puVar29 + -4) = iVar10;\n                                *(int *)(puVar29 + -8) = iVar10;\n                                *(char **)(puVar29 + -0xc) = local_1f8;\n                                *(undefined4 *)(puVar29 + -0x10) = 4;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;\n                                local_21c = (code *)FUN_00020540();\n                                *(undefined4 *)(puVar29 + -8) = 5;\n                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                                *(undefined4 *)(puVar29 + -0x10) = 0;\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;\n                                local_20c = (byte *)dcgettext();\n                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;\n                                piVar14 = __errno_location();\n                                pbVar13 = local_20c;\n                                *(code **)(puVar29 + -0x14) = local_21c;\n                                *(byte **)(puVar29 + -0x18) = pbVar13;\n                                *(int *)(puVar29 + -0x1c) = *piVar14;\n                                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;\n                                error();\n                              }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a04b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a04b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a04b")) (; ";")) (expression_statement "local_21c = (code *)FUN_00020540();" (assignment_expression "local_21c = (code *)FUN_00020540()" (identifier "local_21c") (= "=") (cast_expression "(code *)FUN_00020540()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb027" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb027"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a064;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a064" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a064")) (; ";")) (expression_statement "local_20c = (byte *)dcgettext();" (assignment_expression "local_20c = (byte *)dcgettext()" (identifier "local_20c") (= "=") (cast_expression "(byte *)dcgettext()" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a06f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a06f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a06f")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pbVar13 = local_20c;" (assignment_expression "pbVar13 = local_20c" (identifier "pbVar13") (= "=") (identifier "local_20c")) (; ";")) (expression_statement "*(code **)(puVar29 + -0x14) = local_21c;" (assignment_expression "*(code **)(puVar29 + -0x14) = local_21c" (pointer_expression "*(code **)(puVar29 + -0x14)" (* "*") (cast_expression "(code **)(puVar29 + -0x14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_21c")) (; ";")) (expression_statement "*(byte **)(puVar29 + -0x18) = pbVar13;" (assignment_expression "*(byte **)(puVar29 + -0x18) = pbVar13" (pointer_expression "*(byte **)(puVar29 + -0x18)" (* "*") (cast_expression "(byte **)(puVar29 + -0x18)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pbVar13")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a086;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a086" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001a086" (& "&") (identifier "UNK_0001a086"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (} "}"))) (} "}")) (else_clause "else {\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" (else "else") (compound_statement "{\n                          local_20c = (byte *)((uint)local_20c & 0xffffff00);\n                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;\n                          uVar42 = FUN_00015d90();\n                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);\n                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;\n                          *(int **)(puVar29 + -0xc) = local_228;\n                          *(char **)(puVar29 + -0x10) = local_1f8;\n                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;\n                          iVar10 = FUN_0001b7d0();\n                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);\n                          if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }\n                        }" ({ "{") (expression_statement "local_20c = (byte *)((uint)local_20c & 0xffffff00);" (assignment_expression "local_20c = (byte *)((uint)local_20c & 0xffffff00)" (identifier "local_20c") (= "=") (cast_expression "(byte *)((uint)local_20c & 0xffffff00)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_20c & 0xffffff00)" (( "(") (binary_expression "(uint)local_20c & 0xffffff00" (cast_expression "(uint)local_20c" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_20c")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x1a1d2;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x1a1d2" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x1a1d2")) (; ";")) (expression_statement "uVar42 = FUN_00015d90();" (assignment_expression "uVar42 = FUN_00015d90()" (identifier "uVar42") (= "=") (call_expression "FUN_00015d90()" (identifier "FUN_00015d90") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);" (assignment_expression "*(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20)" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (cast_expression "(int)((ulonglong)uVar42 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar42 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar42 >> 0x20" (cast_expression "(ulonglong)uVar42" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar42")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "*(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;" (assignment_expression "*(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6" (pointer_expression "*(uint *)(puVar29 + -8)" (* "*") (cast_expression "(uint *)(puVar29 + -8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "~(uint)uVar42 & 0x1b6" (unary_expression "~(uint)uVar42" (~ "~") (cast_expression "(uint)uVar42" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar42"))) (& "&") (number_literal "0x1b6"))) (; ";")) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a1ec" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a1ec")) (; ";")) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" (identifier "iVar10") (= "=") (call_expression "FUN_0001b7d0()" (identifier "FUN_0001b7d0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40)" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,bVar40)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,bVar40)" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,bVar40)" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar40") () ")"))))) (; ";")) (if_statement "if (iVar10 != 0) {\n                            bVar25 = (byte)local_20c;\n                          }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                            bVar25 = (byte)local_20c;\n                          }" ({ "{") (expression_statement "bVar25 = (byte)local_20c;" (assignment_expression "bVar25 = (byte)local_20c" (identifier "bVar25") (= "=") (cast_expression "(byte)local_20c" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_20c"))) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" (else "else") (compound_statement "{\n                        *(undefined4 *)(puVar29 + -4) = uVar11;\n                        *(int *)(puVar29 + -8) = piVar14[4];\n                        *(int **)(puVar29 + -0xc) = local_228;\n                        *(char **)(puVar29 + -0x10) = local_1f8;\n                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;\n                        iVar10 = FUN_0001b7d0();\n                        if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }\n                      }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = piVar14[4];" (assignment_expression "*(int *)(puVar29 + -8) = piVar14[4]" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (subscript_expression "piVar14[4]" (identifier "piVar14") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "*(int **)(puVar29 + -0xc) = local_228;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_228" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0e8" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a0e8")) (; ";")) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" (identifier "iVar10") (= "=") (call_expression "FUN_0001b7d0()" (identifier "FUN_0001b7d0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                          bVar25 = 0;\n                        }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                          bVar25 = 0;\n                        }" ({ "{") (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" (else "else") (compound_statement "{\n                      *(uint *)(puVar29 + -0x10) = local_244;\n                      *(int **)(puVar29 + -0x14) = local_228;\n                      *(char **)(puVar29 + -0x18) = local_1f8;\n                      *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                      *(char **)(puVar29 + -0x20) = local_200;\n                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;\n                      iVar10 = FUN_0001b720();\n                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }\n                    }" ({ "{") (expression_statement "*(uint *)(puVar29 + -0x10) = local_244;" (assignment_expression "*(uint *)(puVar29 + -0x10) = local_244" (pointer_expression "*(uint *)(puVar29 + -0x10)" (* "*") (cast_expression "(uint *)(puVar29 + -0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_244")) (; ";")) (expression_statement "*(int **)(puVar29 + -0x14) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x14) = local_228" (pointer_expression "*(int **)(puVar29 + -0x14)" (* "*") (cast_expression "(int **)(puVar29 + -0x14)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_228")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x18) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x18) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x18)" (* "*") (cast_expression "(char **)(puVar29 + -0x18)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x1c) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x1c) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x1961d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x1961d" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x1961d")) (; ";")) (expression_statement "iVar10 = FUN_0001b720();" (assignment_expression "iVar10 = FUN_0001b720()" (identifier "iVar10") (= "=") (call_expression "FUN_0001b720()" (identifier "FUN_0001b720") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {\n                        bVar25 = 0;\n                      }" (if "if") (parenthesized_expression "((iVar10 != 0) && ((char)local_1f0[9] != '\0'))" (( "(") (binary_expression "(iVar10 != 0) && ((char)local_1f0[9] != '\0')" (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((char)local_1f0[9] != '\0')" (( "(") (binary_expression "(char)local_1f0[9] != '\0'" (cast_expression "(char)local_1f0[9]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[9]" (identifier "local_1f0") ([ "[") (number_literal "9") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                        bVar25 = 0;\n                      }" ({ "{") (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")))) (goto_statement "goto LAB_00018028;" (goto "goto") (statement_identifier "LAB_00018028") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" (else "else") (compound_statement "{\n                  iVar10 = 0x15;\n                  if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }\n                }" ({ "{") (expression_statement "iVar10 = 0x15;" (assignment_expression "iVar10 = 0x15" (identifier "iVar10") (= "=") (number_literal "0x15")) (; ";")) (if_statement "if (*local_1f8 != '\0') {\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }" (if "if") (parenthesized_expression "(*local_1f8 != '\0')" (( "(") (binary_expression "*local_1f8 != '\0'" (pointer_expression "*local_1f8" (* "*") (identifier "local_1f8")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    uVar9 = 0xffffffff;\n                    pcVar20 = local_1f8;\n                    do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');\n                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;\n                  }" ({ "{") (expression_statement "uVar9 = 0xffffffff;" (assignment_expression "uVar9 = 0xffffffff" (identifier "uVar9") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "pcVar20 = local_1f8;" (assignment_expression "pcVar20 = local_1f8" (identifier "pcVar20") (= "=") (identifier "local_1f8")) (; ";")) (do_statement "do {\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    } while (cVar6 != '\0');" (do "do") (compound_statement "{\n                      if (uVar9 == 0) break;\n                      uVar9 = uVar9 - 1;\n                      cVar6 = *pcVar20;\n                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;\n                    }" ({ "{") (if_statement "if (uVar9 == 0) break;" (if "if") (parenthesized_expression "(uVar9 == 0)" (( "(") (binary_expression "uVar9 == 0" (identifier "uVar9") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uVar9 = uVar9 - 1;" (assignment_expression "uVar9 = uVar9 - 1" (identifier "uVar9") (= "=") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1"))) (; ";")) (expression_statement "cVar6 = *pcVar20;" (assignment_expression "cVar6 = *pcVar20" (identifier "cVar6") (= "=") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20"))) (; ";")) (expression_statement "pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;" (assignment_expression "pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1" (identifier "pcVar20") (= "=") (binary_expression "pcVar20 + (uint)bVar40 * -2 + 1" (binary_expression "pcVar20 + (uint)bVar40 * -2" (identifier "pcVar20") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (; ";")) (expression_statement "iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;" (assignment_expression "iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14" (identifier "iVar10") (= "=") (binary_expression "(local_1f8[~uVar9 - 2] != '/') + 0x14" (parenthesized_expression "(local_1f8[~uVar9 - 2] != '/')" (( "(") (binary_expression "local_1f8[~uVar9 - 2] != '/'" (subscript_expression "local_1f8[~uVar9 - 2]" (identifier "local_1f8") ([ "[") (binary_expression "~uVar9 - 2" (unary_expression "~uVar9" (~ "~") (identifier "uVar9")) (- "-") (number_literal "2")) (] "]")) (!= "!=") (char_literal "'/'" (' "'") (character "/") (' "'"))) () ")")) (+ "+") (number_literal "0x14"))) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" (else "else") (compound_statement "{\n                iVar10 = 0x11;\n                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);\n                if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }\n              }" ({ "{") (expression_statement "iVar10 = 0x11;" (assignment_expression "iVar10 = 0x11" (identifier "iVar10") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,(char)local_1f0[6])" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,(char)local_1f0[6])" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) () ")"))))) (; ";")) (if_statement "if ((char)local_1f0[6] == '\0') {\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }" (if "if") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);\n                  *(stat64 **)(puVar29 + -8) = &local_94;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 3;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;\n                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));\n                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }\n                  goto LAB_00019445;\n                }" ({ "{") (expression_statement "*(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);" (assignment_expression "*(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25)" (pointer_expression "*(uint *)(puVar29 + -4)" (* "*") (cast_expression "(uint *)(puVar29 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (call_expression "CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25)" (identifier "CONCAT31") (argument_list "((int3)((uint)extraout_EDX >> 8),bVar25)" (( "(") (call_expression "(int3)((uint)extraout_EDX >> 8)" (parenthesized_expression "(int3)" (( "(") (identifier "int3") () ")")) (argument_list "((uint)extraout_EDX >> 8)" (( "(") (binary_expression "(uint)extraout_EDX >> 8" (cast_expression "(uint)extraout_EDX" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "extraout_EDX")) (>> ">>") (number_literal "8")) () ")"))) (, ",") (identifier "bVar25") () ")")))) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -8) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x193f6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x193f6" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x193f6")) (; ";")) (expression_statement "iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" (identifier "iVar8") (= "=") (call_expression "__lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" (identifier "__lxstat64") (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                     *(stat64 **)(puVar29 + -8))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (if_statement "if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }" (if "if") (parenthesized_expression "((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000))" (( "(") (binary_expression "(iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)" (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((local_94.st_mode & 0xf000) == 0xa000)" (( "(") (binary_expression "(local_94.st_mode & 0xf000) == 0xa000" (parenthesized_expression "(local_94.st_mode & 0xf000)" (( "(") (binary_expression "local_94.st_mode & 0xf000" (field_expression "local_94.st_mode" (identifier "local_94") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0xa000")) () ")"))) () ")")) (compound_statement "{\n                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);\n                    if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }\n                    *(uint *)(puVar29 + -4) = uVar9;\n                    *(code **)(puVar29 + -8) = local_21c;\n                    *(undefined4 *)(puVar29 + -0xc) = 0x41;\n                    *(char **)(puVar29 + -0x10) = local_1f8;\n                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;\n                    local_228 = (int *)FUN_0001d190();\n                    iVar10 = *(int *)local_220;\n                  }" ({ "{") (expression_statement "uVar9 = (uint)*(byte *)(local_1f0 + 0xc);" (assignment_expression "uVar9 = (uint)*(byte *)(local_1f0 + 0xc)" (identifier "uVar9") (= "=") (binary_expression "(uint)*(byte *)(local_1f0 + 0xc)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(local_1f0 + 0xc)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 0xc)" (( "(") (binary_expression "local_1f0 + 0xc" (identifier "local_1f0") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if (*(byte *)(local_1f0 + 0xc) == 0) {\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }" (if "if") (parenthesized_expression "(*(byte *)(local_1f0 + 0xc) == 0)" (( "(") (binary_expression "*(byte *)(local_1f0 + 0xc) == 0" (pointer_expression "*(byte *)(local_1f0 + 0xc)" (* "*") (cast_expression "(byte *)(local_1f0 + 0xc)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 0xc)" (( "(") (binary_expression "local_1f0 + 0xc" (identifier "local_1f0") (+ "+") (number_literal "0xc")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      *(uint *)(puVar29 + -4) = uVar9;\n                      *(uint *)(puVar29 + -8) = uVar9;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 4;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;\n                      uVar11 = FUN_00020540();\n                      *(undefined4 *)(puVar29 + -8) = 5;\n                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";\n                      *(undefined4 *)(puVar29 + -0x10) = 0;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;\n                      uVar12 = dcgettext();\n                      *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                      *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                      *(undefined4 *)(puVar29 + -0x1c) = 0;\n                      *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;\n                      error();\n                    }" ({ "{") (expression_statement "*(uint *)(puVar29 + -4) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -4) = uVar9" (pointer_expression "*(uint *)(puVar29 + -4)" (* "*") (cast_expression "(uint *)(puVar29 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(uint *)(puVar29 + -8) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -8) = uVar9" (pointer_expression "*(uint *)(puVar29 + -8)" (* "*") (cast_expression "(uint *)(puVar29 + -8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a217;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a217" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a217")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""not writing through dangling symlink %s"" (" """) (string_content "not writing through dangling symlink %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a22c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a22c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a22c")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001a237;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001a237" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001a237" (& "&") (identifier "UNK_0001a237"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(uint *)(puVar29 + -4) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -4) = uVar9" (pointer_expression "*(uint *)(puVar29 + -4)" (* "*") (cast_expression "(uint *)(puVar29 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(code **)(puVar29 + -8) = local_21c;" (assignment_expression "*(code **)(puVar29 + -8) = local_21c" (pointer_expression "*(code **)(puVar29 + -8)" (* "*") (cast_expression "(code **)(puVar29 + -8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_21c")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0x41;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0x41" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0x41")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19434;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19434" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19434")) (; ";")) (expression_statement "local_228 = (int *)FUN_0001d190();" (assignment_expression "local_228 = (int *)FUN_0001d190()" (identifier "local_228") (= "=") (cast_expression "(int *)FUN_0001d190()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d190()" (identifier "FUN_0001d190") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)local_220;" (assignment_expression "iVar10 = *(int *)local_220" (identifier "iVar10") (= "=") (pointer_expression "*(int *)local_220" (* "*") (cast_expression "(int *)local_220" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_220")))) (; ";")) (} "}"))) (goto_statement "goto LAB_00019445;" (goto "goto") (statement_identifier "LAB_00019445") (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_00019116:\n              *(char **)(puVar29 + -0xc) = local_1f8;" (statement_identifier "LAB_00019116") (: ":") (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19126;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19126" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19126")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create regular file %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create regular file %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot create regular file %s"" (" """) (string_content "cannot create regular file %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1913b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1913b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1913b")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x1c) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (labeled_statement "LAB_00018b73:\n              *(undefined4 *)(puVar29 + -0x20) = 0;" (statement_identifier "LAB_00018b73") (: ":") (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";"))) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018b7c" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00018b7c" (& "&") (identifier "UNK_00018b7c"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;" (assignment_expression "*(uint *)(puVar29 + -0xc) =\n                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201" (parenthesized_expression "(-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00)" (( "(") (binary_expression "-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00" (unary_expression "-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0')" (- "-") (call_expression "(uint)(*(char *)((int)local_1f0 + 0x23) == '\0')" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(char *)((int)local_1f0 + 0x23) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x23) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x23)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x23)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x23)" (( "(") (binary_expression "(int)local_1f0 + 0x23" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x23")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")))) (& "&") (number_literal "0xfffffe00")) () ")")) (+ "+") (number_literal "0x201"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17c4d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17c4d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17c4d")) (; ";")) (expression_statement "local_228 = (int *)FUN_0001d190();" (assignment_expression "local_228 = (int *)FUN_0001d190()" (identifier "local_228") (= "=") (cast_expression "(int *)FUN_0001d190()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001d190()" (identifier "FUN_0001d190") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "piVar23 = local_1f0;" (assignment_expression "piVar23 = local_1f0" (identifier "piVar23") (= "=") (identifier "local_1f0")) (; ";")) (if_statement "if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               ) {\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }\n            else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" (if "if") (parenthesized_expression "((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')\n               )" (( "(") (binary_expression "(*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')" (parenthesized_expression "(*(char *)((int)piVar14 + 0x21) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar14 + 0x21) == '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x21)" (* "*") (cast_expression "(char *)((int)piVar14 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar14 + 0x21)" (( "(") (binary_expression "(int)piVar14 + 0x21" (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14")) (+ "+") (number_literal "0x21")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)((int)piVar14 + 0x25) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar14 + 0x25) == '\0'" (pointer_expression "*(char *)((int)piVar14 + 0x25)" (* "*") (cast_expression "(char *)((int)piVar14 + 0x25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar14 + 0x25)" (( "(") (binary_expression "(int)piVar14 + 0x25" (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14")) (+ "+") (number_literal "0x25")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n              if (-1 < (int)local_228) goto LAB_00017c77;\nLAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;\n              piVar23 = __errno_location();\n              if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19290;\n              iVar10 = unlink(*(char **)(puVar29 + -0x10));\n              if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }\n              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }\n              local_278 = local_23c;\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));\n              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;\n              *(int **)(puVar29 + -0x10) = local_1f0;\n              *(undefined4 *)(puVar29 + -0x14) = 1;\n              *(uint *)(puVar29 + -0x18) = local_284;\n              *(char **)(puVar29 + -0x1c) = local_1f8;\n              *(char **)(puVar29 + -0x20) = local_200;\n              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;\n              cVar6 = FUN_000156e0();\n              if (cVar6 != '\0') goto LAB_00019094;\n              local_220 = (code *)0x0;\n              bVar25 = 0;\n            }" ({ "{") (if_statement "if (-1 < (int)local_228) goto LAB_00017c77;" (if "if") (parenthesized_expression "(-1 < (int)local_228)" (( "(") (binary_expression "-1 < (int)local_228" (number_literal "-1") (< "<") (cast_expression "(int)local_228" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_228"))) () ")")) (goto_statement "goto LAB_00017c77;" (goto "goto") (statement_identifier "LAB_00017c77") (; ";"))) (labeled_statement "LAB_0001926b:\n              *(undefined4 *)(puVar29 + -4) = 0x19270;" (statement_identifier "LAB_0001926b") (: ":") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19270;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19270" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x19270")) (; ";"))) (expression_statement "piVar23 = __errno_location();" (assignment_expression "piVar23 = __errno_location()" (identifier "piVar23") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x16) == '\0') {\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x16) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x16) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x16)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x16)" (( "(") (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x16")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                iVar10 = *piVar23;\n                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }\n                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);\n                goto LAB_00019116;\n              }" ({ "{") (expression_statement "iVar10 = *piVar23;" (assignment_expression "iVar10 = *piVar23" (identifier "iVar10") (= "=") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) (; ";")) (if_statement "if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }" (if "if") (parenthesized_expression "((iVar10 == 2) && ((char)local_1f0[6] == '\0'))" (( "(") (binary_expression "(iVar10 == 2) && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(iVar10 == 2)" (( "(") (binary_expression "iVar10 == 2" (identifier "iVar10") (== "==") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                  local_278 = 0;\n                  goto LAB_000190a0;\n                }" ({ "{") (expression_statement "local_278 = 0;" (assignment_expression "local_278 = 0" (identifier "local_278") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_000190a0;" (goto "goto") (statement_identifier "LAB_000190a0") (; ";")) (} "}"))) (expression_statement "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4 & 0xffffff00)" (identifier "local_1f4") (= "=") (cast_expression "(char *)((uint)local_1f4 & 0xffffff00)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_1f4 & 0xffffff00)" (( "(") (binary_expression "(uint)local_1f4 & 0xffffff00" (cast_expression "(uint)local_1f4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_1f4")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (goto_statement "goto LAB_00019116;" (goto "goto") (statement_identifier "LAB_00019116") (; ";")) (} "}"))) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19290;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19290" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19290")) (; ";")) (expression_statement "iVar10 = unlink(*(char **)(puVar29 + -0x10));" (assignment_expression "iVar10 = unlink(*(char **)(puVar29 + -0x10))" (identifier "iVar10") (= "=") (call_expression "unlink(*(char **)(puVar29 + -0x10))" (identifier "unlink") (argument_list "(*(char **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                *(int **)(puVar29 + -4) = piVar14;\n                *(int **)(puVar29 + -8) = piVar14;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot remove %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar23;\n                goto LAB_00018b73;\n              }" ({ "{") (expression_statement "*(int **)(puVar29 + -4) = piVar14;" (assignment_expression "*(int **)(puVar29 + -4) = piVar14" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "piVar14")) (; ";")) (expression_statement "*(int **)(puVar29 + -8) = piVar14;" (assignment_expression "*(int **)(puVar29 + -8) = piVar14" (pointer_expression "*(int **)(puVar29 + -8)" (* "*") (cast_expression "(int **)(puVar29 + -8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "piVar14")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a104;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a104" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a104")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot remove %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot remove %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot remove %s"" (" """) (string_content "cannot remove %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a119;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a119" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a119")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar23;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar23" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar23" (* "*") (identifier "piVar23"))) (; ";")) (goto_statement "goto LAB_00018b73;" (goto "goto") (statement_identifier "LAB_00018b73") (; ";")) (} "}"))) (if_statement "if (*(char *)((int)local_1f0 + 0x2e) != '\0') {\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2e) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2e) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2e)" (( "(") (binary_expression "(int)local_1f0 + 0x2e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2e")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;\n                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "removed %s\n";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -8) = uVar11;\n                *(undefined4 *)(puVar29 + -0xc) = uVar12;\n                *(undefined4 *)(puVar29 + -0x10) = 1;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;\n                __printf_chk();\n              }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = extraout_ECX_04;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = extraout_ECX_04" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "extraout_ECX_04")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = extraout_ECX_04;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = extraout_ECX_04" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "extraout_ECX_04")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0aa" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a0aa")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "removed %s\n";" (assignment_expression "*(char **)(puVar29 + -0xc) = "removed %s\n"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""removed %s\n"" (" """) (string_content "removed %s") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0bf" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a0bf")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a0cb" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a0cb")) (; ";")) (expression_statement "__printf_chk();" (call_expression "__printf_chk()" (identifier "__printf_chk") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "local_278 = local_23c;" (assignment_expression "local_278 = local_23c" (identifier "local_278") (= "=") (identifier "local_23c")) (; ";")) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21))" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)((int)local_1f0 + 0x21)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x21)" (( "(") (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x21")) () ")")))) () ")"))))) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x21) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x21)" (( "(") (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x21")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000190a0;" (goto "goto") (statement_identifier "LAB_000190a0") (; ";"))) (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = local_284;" (assignment_expression "*(uint *)(puVar29 + -0x18) = local_284" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_284")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x1c) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x1c) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x1c)" (* "*") (cast_expression "(char **)(puVar29 + -0x1c)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x192f1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x192f1" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x192f1")) (; ";")) (expression_statement "cVar6 = FUN_000156e0();" (assignment_expression "cVar6 = FUN_000156e0()" (identifier "cVar6") (= "=") (call_expression "FUN_000156e0()" (identifier "FUN_000156e0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') goto LAB_00019094;" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00019094;" (goto "goto") (statement_identifier "LAB_00019094") (; ";"))) (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" (identifier "local_220") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" (else "else") (compound_statement "{\n              if ((int)local_228 < 0) goto LAB_0001926b;\n              bVar40 = *(byte *)((int)local_1f0 + 0x25);\n              *(int **)(puVar29 + -4) = local_1f0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(uint *)(puVar29 + -0xc) = (uint)bVar40;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;\n              cVar6 = FUN_00015960();\n              if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }\n              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));\n              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;\n              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);\n              local_220 = (code *)0x0;\n              bVar25 = 0;\nLAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18036;\n              iVar10 = close(*(int *)(puVar29 + -0x10));\n              if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }\n            }" ({ "{") (if_statement "if ((int)local_228 < 0) goto LAB_0001926b;" (if "if") (parenthesized_expression "((int)local_228 < 0)" (( "(") (binary_expression "(int)local_228 < 0" (cast_expression "(int)local_228" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_228")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001926b;" (goto "goto") (statement_identifier "LAB_0001926b") (; ";"))) (expression_statement "bVar40 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar40 = *(byte *)((int)local_1f0 + 0x25)" (identifier "bVar40") (= "=") (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")"))))) (; ";")) (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)bVar40;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)bVar40" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1952e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1952e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1952e")) (; ";")) (expression_statement "cVar6 = FUN_00015960();" (assignment_expression "cVar6 = FUN_00015960()" (identifier "cVar6") (= "=") (call_expression "FUN_00015960()" (identifier "FUN_00015960") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') {\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_00017c77:\n                local_278 = 0;\n                goto LAB_00017c81;\n              }" ({ "{") (labeled_statement "LAB_00017c77:\n                local_278 = 0;" (statement_identifier "LAB_00017c77") (: ":") (expression_statement "local_278 = 0;" (assignment_expression "local_278 = 0" (identifier "local_278") (= "=") (number_literal "0")) (; ";"))) (goto_statement "goto LAB_00017c81;" (goto "goto") (statement_identifier "LAB_00017c81") (; ";")) (} "}"))) (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26))" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)((int)piVar23 + 0x26)" (* "*") (cast_expression "(char *)((int)piVar23 + 0x26)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar23 + 0x26)" (( "(") (binary_expression "(int)piVar23 + 0x26" (cast_expression "(int)piVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar23")) (+ "+") (number_literal "0x26")) () ")")))) () ")"))))) (; ";")) (if_statement "if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;" (if "if") (parenthesized_expression "(*(char *)((int)piVar23 + 0x26) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar23 + 0x26) == '\0'" (pointer_expression "*(char *)((int)piVar23 + 0x26)" (* "*") (cast_expression "(char *)((int)piVar23 + 0x26)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar23 + 0x26)" (( "(") (binary_expression "(int)piVar23 + 0x26" (cast_expression "(int)piVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar23")) (+ "+") (number_literal "0x26")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00017c77;" (goto "goto") (statement_identifier "LAB_00017c77") (; ";"))) (expression_statement "local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);" (assignment_expression "local_1f4 = (char *)((uint)local_1f4._1_3_ << 8)" (identifier "local_1f4") (= "=") (cast_expression "(char *)((uint)local_1f4._1_3_ << 8)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_1f4._1_3_ << 8)" (( "(") (binary_expression "(uint)local_1f4._1_3_ << 8" (cast_expression "(uint)local_1f4._1_3_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_"))) (<< "<<") (number_literal "8")) () ")")))) (; ";")) (expression_statement "local_220 = (code *)0x0;" (assignment_expression "local_220 = (code *)0x0" (identifier "local_220") (= "=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_00018028:\n              *(int **)(puVar29 + -0x10) = local_228;" (statement_identifier "LAB_00018028") (: ":") (expression_statement "*(int **)(puVar29 + -0x10) = local_228;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_228" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_228")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18036;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18036" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18036")) (; ";")) (expression_statement "iVar10 = close(*(int *)(puVar29 + -0x10));" (assignment_expression "iVar10 = close(*(int *)(puVar29 + -0x10))" (identifier "iVar10") (= "=") (call_expression "close(*(int *)(puVar29 + -0x10))" (identifier "close") (argument_list "(*(int *)(puVar29 + -0x10))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 < 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19663;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;\n                piVar14 = __errno_location();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(int *)(puVar29 + -0x1c) = *piVar14;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;\n                error();\n              }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1964e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1964e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1964e")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb009" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb009"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19663;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19663" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19663")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1966a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1966a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1966a")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00019677;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00019677" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00019677" (& "&") (identifier "UNK_00019677"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18056;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18056" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18056")) (; ";")) (expression_statement "iVar10 = close(*(int *)(puVar29 + -0x10));" (assignment_expression "iVar10 = close(*(int *)(puVar29 + -0x10))" (identifier "iVar10") (= "=") (call_expression "close(*(int *)(puVar29 + -0x10))" (identifier "close") (argument_list "(*(int *)(puVar29 + -0x10))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 < 0) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;\n              *(undefined4 *)(puVar29 + -0x10) = 0;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;\n              uVar12 = dcgettext();\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;\n              piVar14 = __errno_location();\n              *(undefined4 *)(puVar29 + -0x14) = uVar11;\n              *(undefined4 *)(puVar29 + -0x18) = uVar12;\n              *(int *)(puVar29 + -0x1c) = *piVar14;\n              *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;\n              error();\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e7e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e7e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18e7e")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb009" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb009"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e93;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e93" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18e93")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e9a;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e9a" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18e9a")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00018ea5" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00018ea5" (& "&") (identifier "UNK_00018ea5"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(code **)(puVar29 + -0x10) = local_220;" (assignment_expression "*(code **)(puVar29 + -0x10) = local_220" (pointer_expression "*(code **)(puVar29 + -0x10)" (* "*") (cast_expression "(code **)(puVar29 + -0x10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_220")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1806f;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1806f" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1806f")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_208 & 0xffffff00)" (( "(") (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_208")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (expression_statement "bVar40 = bVar25;" (assignment_expression "bVar40 = bVar25" (identifier "bVar40") (= "=") (identifier "bVar25")) (; ";")) (goto_statement "goto joined_r0x00018387;" (goto "goto") (statement_identifier "joined_r0x00018387") (; ";")) (} "}"))) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_238 == (stat64 *)0x1000) {\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }\n          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" (if "if") (parenthesized_expression "(local_238 == (stat64 *)0x1000)" (( "(") (binary_expression "local_238 == (stat64 *)0x1000" (identifier "local_238") (== "==") (cast_expression "(stat64 *)0x1000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1000"))) () ")")) (compound_statement "{\n            local_94.st_dev._0_4_ = (byte *)0x0;\n            local_94.st_dev._4_4_ = 0;\n            uVar9 = ~local_23c & local_204;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            *(uint *)(puVar29 + -8) = uVar9;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }\n          }" ({ "{") (expression_statement "local_94.st_dev._0_4_ = (byte *)0x0;" (assignment_expression "local_94.st_dev._0_4_ = (byte *)0x0" (field_expression "local_94.st_dev._0_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_0_4_")) (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_94.st_dev._4_4_ = 0;" (assignment_expression "local_94.st_dev._4_4_ = 0" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar9 = ~local_23c & local_204;" (assignment_expression "uVar9 = ~local_23c & local_204" (identifier "uVar9") (= "=") (binary_expression "~local_23c & local_204" (unary_expression "~local_23c" (~ "~") (identifier "local_23c")) (& "&") (identifier "local_204"))) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -4) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -4) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -4)" (* "*") (cast_expression "(stat64 **)(puVar29 + -4)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "*(uint *)(puVar29 + -8) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -8) = uVar9" (pointer_expression "*(uint *)(puVar29 + -8)" (* "*") (cast_expression "(uint *)(puVar29 + -8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18dbe;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18dbe" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18dbe")) (; ";")) (expression_statement "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));" (assignment_expression "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" (identifier "iVar10") (= "=") (call_expression "__xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" (identifier "__xmknod") (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(__mode_t *)(puVar29 + -8)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -8)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (, ",") (pointer_expression "*(__dev_t **)(puVar29 + -4)" (* "*") (cast_expression "(__dev_t **)(puVar29 + -4)" (( "(") (type_descriptor "__dev_t **" (type_identifier "__dev_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) () ")")))) (; ";")) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_208 & 0xffffff00)" (( "(") (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_208")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;\n              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n              if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }\n            }" ({ "{") (expression_statement "*(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;" (assignment_expression "*(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "uVar9 & 0xffffefff" (identifier "uVar9") (& "&") (number_literal "0xffffefff"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18de5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18de5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18de5")) (; ";")) (expression_statement "iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" (identifier "mkfifo") (argument_list "(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(__mode_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_208 & 0xffffff00)" (( "(") (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_208")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                *(int *)(puVar29 + -4) = iVar10;\n                *(int *)(puVar29 + -8) = iVar10;\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;\n                uVar11 = FUN_00020540();\n                puVar33 = puVar29 + -8;\n                *(undefined4 *)(puVar29 + -8) = 5;\n                pcVar20 = "cannot create fifo %s";\n                goto LAB_00016f90;\n              }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e07;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e07" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18e07")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot create fifo %s";" (assignment_expression "pcVar20 = "cannot create fifo %s"" (identifier "pcVar20") (= "=") (string_literal ""cannot create fifo %s"" (" """) (string_content "cannot create fifo %s") (" """))) (; ";")) (goto_statement "goto LAB_00016f90;" (goto "goto") (statement_identifier "LAB_00016f90") (; ";")) (} "}"))) (} "}"))) (} "}")) (else_clause "else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" (else "else") (if_statement "if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }\n          else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" (if "if") (parenthesized_expression "(((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000)" (( "(") (binary_expression "((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000" (binary_expression "((uint)local_238 & 0xffffbfff) == 0x2000" (parenthesized_expression "((uint)local_238 & 0xffffbfff)" (( "(") (binary_expression "(uint)local_238 & 0xffffbfff" (cast_expression "(uint)local_238" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_238")) (& "&") (number_literal "0xffffbfff")) () ")")) (== "==") (number_literal "0x2000")) (|| "||") (binary_expression "local_238 == (stat64 *)0xc000" (identifier "local_238") (== "==") (cast_expression "(stat64 *)0xc000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xc000")))) () ")")) (compound_statement "{\n            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;\n            *(stat64 **)(puVar29 + -4) = &local_94;\n            local_94.st_dev._4_4_ = local_190;\n            *(uint *)(puVar29 + -8) = ~local_23c & local_204;\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 1;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;\n            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));\n            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);\n            if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }\n          }" ({ "{") (expression_statement "local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;" (assignment_expression "local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_" (field_expression "local_94.st_dev._0_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_0_4_")) (= "=") (cast_expression "(byte *)local_1b4._32_4_" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "local_1b4._32_4_" (identifier "local_1b4") (. ".") (field_identifier "_32_4_")))) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -4) = &local_94;" (assignment_expression "*(stat64 **)(puVar29 + -4) = &local_94" (pointer_expression "*(stat64 **)(puVar29 + -4)" (* "*") (cast_expression "(stat64 **)(puVar29 + -4)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (pointer_expression "&local_94" (& "&") (identifier "local_94"))) (; ";")) (expression_statement "local_94.st_dev._4_4_ = local_190;" (assignment_expression "local_94.st_dev._4_4_ = local_190" (field_expression "local_94.st_dev._4_4_" (field_expression "local_94.st_dev" (identifier "local_94") (. ".") (field_identifier "st_dev")) (. ".") (field_identifier "_4_4_")) (= "=") (identifier "local_190")) (; ";")) (expression_statement "*(uint *)(puVar29 + -8) = ~local_23c & local_204;" (assignment_expression "*(uint *)(puVar29 + -8) = ~local_23c & local_204" (pointer_expression "*(uint *)(puVar29 + -8)" (* "*") (cast_expression "(uint *)(puVar29 + -8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "~local_23c & local_204" (unary_expression "~local_23c" (~ "~") (identifier "local_23c")) (& "&") (identifier "local_204"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 1;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 1" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16f59;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16f59" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16f59")) (; ";")) (expression_statement "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));" (assignment_expression "iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" (identifier "iVar10") (= "=") (call_expression "__xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" (identifier "__xmknod") (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(__mode_t *)(puVar29 + -8)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -8)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (, ",") (pointer_expression "*(__dev_t **)(puVar29 + -4)" (* "*") (cast_expression "(__dev_t **)(puVar29 + -4)" (( "(") (type_descriptor "__dev_t **" (type_identifier "__dev_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) () ")")))) (; ";")) (expression_statement "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);" (assignment_expression "local_208 = (undefined1 *)((uint)local_208 & 0xffffff00)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)((uint)local_208 & 0xffffff00)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)local_208 & 0xffffff00)" (( "(") (binary_expression "(uint)local_208 & 0xffffff00" (cast_expression "(uint)local_208" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_208")) (& "&") (number_literal "0xffffff00")) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot create special file %s";\n              goto LAB_00016f90;\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16f7c;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16f7c" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16f7c")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot create special file %s";" (assignment_expression "pcVar20 = "cannot create special file %s"" (identifier "pcVar20") (= "=") (string_literal ""cannot create special file %s"" (" """) (string_content "cannot create special file %s") (" """))) (; ";")) (goto_statement "goto LAB_00016f90;" (goto "goto") (statement_identifier "LAB_00016f90") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" (else "else") (compound_statement "{\n            if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }\n            *(undefined4 *)(puVar29 + -0xc) = local_188;\n            *(char **)(puVar29 + -0x10) = local_200;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;\n            pcVar20 = (char *)FUN_0001b850();\n            if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }\n            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);\n            *(char **)(puVar29 + -8) = local_1f8;\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;\n            *(char **)(puVar29 + -0x10) = pcVar20;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;\n            iVar10 = FUN_0001ade0();\n            if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }\n            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);\n            bVar40 = *(byte *)((int)local_1f0 + 0x1d);\n            bVar25 = bVar40;\n            if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }\n          }" ({ "{") (if_statement "if (local_238 != (stat64 *)0xa000) {\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }" (if "if") (parenthesized_expression "(local_238 != (stat64 *)0xa000)" (( "(") (binary_expression "local_238 != (stat64 *)0xa000" (identifier "local_238") (!= "!=") (cast_expression "(stat64 *)0xa000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xa000"))) () ")")) (compound_statement "{\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;\n              uVar11 = FUN_00020540();\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "%s has unknown file type";\n              goto LAB_00016e8b;\n            }" ({ "{") (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18e30;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18e30" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18e30")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "%s has unknown file type";" (assignment_expression "pcVar20 = "%s has unknown file type"" (identifier "pcVar20") (= "=") (string_literal ""%s has unknown file type"" (" """) (string_content "%s has unknown file type") (" """))) (; ";")) (goto_statement "goto LAB_00016e8b;" (goto "goto") (statement_identifier "LAB_00016e8b") (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = local_188;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = local_188" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_188")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_200" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a38;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a38" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18a38")) (; ";")) (expression_statement "pcVar20 = (char *)FUN_0001b850();" (assignment_expression "pcVar20 = (char *)FUN_0001b850()" (identifier "pcVar20") (= "=") (cast_expression "(char *)FUN_0001b850()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0001b850()" (identifier "FUN_0001b850") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (pcVar20 == (char *)0x0) {\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }" (if "if") (parenthesized_expression "(pcVar20 == (char *)0x0)" (( "(") (binary_expression "pcVar20 == (char *)0x0" (identifier "pcVar20") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0;\n              *(undefined4 *)(puVar29 + -8) = 0;\n              *(char **)(puVar29 + -0xc) = local_200;\n              *(undefined4 *)(puVar29 + -0x10) = 4;\n              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;\n              uVar11 = FUN_00020540();\n              puVar33 = puVar29 + -8;\n              *(undefined4 *)(puVar29 + -8) = 5;\n              pcVar20 = "cannot read symbolic link %s";\n              goto LAB_00016f90;\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_200;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_200" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x194d0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x194d0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x194d0")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar33 = puVar29 + -8;" (assignment_expression "puVar33 = puVar29 + -8" (identifier "puVar33") (= "=") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "pcVar20 = "cannot read symbolic link %s";" (assignment_expression "pcVar20 = "cannot read symbolic link %s"" (identifier "pcVar20") (= "=") (string_literal ""cannot read symbolic link %s"" (" """) (string_content "cannot read symbolic link %s") (" """))) (; ";")) (goto_statement "goto LAB_00016f90;" (goto "goto") (statement_identifier "LAB_00016f90") (; ";")) (} "}"))) (expression_statement "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);" (assignment_expression "*(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16)" (pointer_expression "*(uint *)(puVar29 + -4)" (* "*") (cast_expression "(uint *)(puVar29 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (binary_expression "(uint)*(byte *)((int)local_1f0 + 0x16)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x16)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x16)" (( "(") (binary_expression "(int)local_1f0 + 0x16" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x16")) () ")"))))) (; ";")) (expression_statement "*(char **)(puVar29 + -8) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -8) = local_1f8" (pointer_expression "*(char **)(puVar29 + -8)" (* "*") (cast_expression "(char **)(puVar29 + -8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffff9c" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0xffffff9c")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a5e;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a5e" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18a5e")) (; ";")) (expression_statement "iVar10 = FUN_0001ade0();" (assignment_expression "iVar10 = FUN_0001ade0()" (identifier "iVar10") (= "=") (call_expression "FUN_0001ade0()" (identifier "FUN_0001ade0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 < 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }\n            else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x19315;\n              piVar14 = __errno_location();\n              local_208 = (undefined1 *)*piVar14;\n              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;\n              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }\n              uVar9 = 0xffffffff;\n              pcVar18 = pcVar20;\n              do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');\n              iVar10 = ~uVar9 - 1;\n              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;\n              iVar10 = FUN_0001b850();\n              if (iVar10 == 0) goto LAB_0001933e;\n              *(int *)(puVar29 + -4) = iVar10;\n              *(int *)(puVar29 + -8) = iVar10;\n              *(char **)(puVar29 + -0xc) = pcVar20;\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;\n              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));\n              if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }\n              *(int *)(puVar29 + -0x10) = iVar10;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;\n              free(*(void **)(puVar29 + -0x10));\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;\n              free(*(void **)(puVar29 + -0x10));\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19315;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19315" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x19315")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_208 = (undefined1 *)*piVar14;" (assignment_expression "local_208 = (undefined1 *)*piVar14" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)*piVar14" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar14" (* "*") (identifier "piVar14")))) (; ";")) (if_statement "if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;" (if "if") (parenthesized_expression "((undefined1 *)*piVar14 == (undefined1 *)0x0)" (( "(") (binary_expression "(undefined1 *)*piVar14 == (undefined1 *)0x0" (cast_expression "(undefined1 *)*piVar14" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00018a69;" (goto "goto") (statement_identifier "LAB_00018a69") (; ";"))) (if_statement "if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)) {\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }" (if "if") (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000))" (( "(") (binary_expression "((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||\n                 ((local_154.st_mode & 0xf000) != 0xa000)" (parenthesized_expression "((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0'))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2d) != '\x01')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2d) != '\x01'" (pointer_expression "*(char *)((int)local_1f0 + 0x2d)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2d)" (( "(") (binary_expression "(int)local_1f0 + 0x2d" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2d")) () ")")))) (!= "!=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (|| "||") (parenthesized_expression "((byte)local_1f4 != '\0')" (( "(") (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "((local_154.st_mode & 0xf000) != 0xa000)" (( "(") (binary_expression "(local_154.st_mode & 0xf000) != 0xa000" (parenthesized_expression "(local_154.st_mode & 0xf000)" (( "(") (binary_expression "local_154.st_mode & 0xf000" (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")) (& "&") (number_literal "0xf000")) () ")")) (!= "!=") (number_literal "0xa000")) () ")"))) () ")")) (compound_statement "{\nLAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19347;\n                free(*(void **)(puVar29 + -0x10));\n                *(char **)(puVar29 + -0xc) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x10) = 4;\n                *(undefined4 *)(puVar29 + -0x14) = 0x19356;\n                uVar11 = FUN_00020540();\n                *(undefined4 *)(puVar29 + -8) = 5;\n                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";\n                *(undefined4 *)(puVar29 + -0x10) = 0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;\n                uVar12 = dcgettext();\n                *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                *(undefined4 *)(puVar29 + -0x18) = uVar12;\n                *(undefined1 **)(puVar29 + -0x1c) = local_208;\n                *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;\n                error();\n              }" ({ "{") (labeled_statement "LAB_0001933e:\n                *(char **)(puVar29 + -0x10) = pcVar20;" (statement_identifier "LAB_0001933e") (: ":") (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pcVar20")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19347;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19347" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19347")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19356;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19356" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19356")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "cannot create symbolic link %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""cannot create symbolic link %s"" (" """) (string_content "cannot create symbolic link %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1936b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1936b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1936b")) (; ";")) (expression_statement "uVar12 = dcgettext();" (assignment_expression "uVar12 = dcgettext()" (identifier "uVar12") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar12;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar12" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x1c) = local_208;" (assignment_expression "*(undefined1 **)(puVar29 + -0x1c) = local_208" (pointer_expression "*(undefined1 **)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_208")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001937a;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001937a" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001937a" (& "&") (identifier "UNK_0001937a"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar9 = 0xffffffff;" (assignment_expression "uVar9 = 0xffffffff" (identifier "uVar9") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "pcVar18 = pcVar20;" (assignment_expression "pcVar18 = pcVar20" (identifier "pcVar18") (= "=") (identifier "pcVar20")) (; ";")) (do_statement "do {\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              } while (cVar6 != '\0');" (do "do") (compound_statement "{\n                if (uVar9 == 0) break;\n                uVar9 = uVar9 - 1;\n                cVar6 = *pcVar18;\n                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;\n              }" ({ "{") (if_statement "if (uVar9 == 0) break;" (if "if") (parenthesized_expression "(uVar9 == 0)" (( "(") (binary_expression "uVar9 == 0" (identifier "uVar9") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uVar9 = uVar9 - 1;" (assignment_expression "uVar9 = uVar9 - 1" (identifier "uVar9") (= "=") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1"))) (; ";")) (expression_statement "cVar6 = *pcVar18;" (assignment_expression "cVar6 = *pcVar18" (identifier "cVar6") (= "=") (pointer_expression "*pcVar18" (* "*") (identifier "pcVar18"))) (; ";")) (expression_statement "pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;" (assignment_expression "pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1" (identifier "pcVar18") (= "=") (binary_expression "pcVar18 + (uint)bVar40 * -2 + 1" (binary_expression "pcVar18 + (uint)bVar40 * -2" (identifier "pcVar18") (+ "+") (binary_expression "(uint)bVar40 * -2" (cast_expression "(uint)bVar40" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar40")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (; ";")) (expression_statement "iVar10 = ~uVar9 - 1;" (assignment_expression "iVar10 = ~uVar9 - 1" (identifier "iVar10") (= "=") (binary_expression "~uVar9 - 1" (unary_expression "~uVar9" (~ "~") (identifier "uVar9")) (- "-") (number_literal "1"))) (; ";")) (if_statement "if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))\n              goto LAB_0001933e;" (if "if") (parenthesized_expression "((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))" (( "(") (binary_expression "(local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10)" (parenthesized_expression "(local_154.st_size._4_4_ != 0)" (( "(") (binary_expression "local_154.st_size._4_4_ != 0" (field_expression "local_154.st_size._4_4_" (field_expression "local_154.st_size" (identifier "local_154") (. ".") (field_identifier "st_size")) (. ".") (field_identifier "_4_4_")) (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((int)local_154.st_size != iVar10)" (( "(") (binary_expression "(int)local_154.st_size != iVar10" (cast_expression "(int)local_154.st_size" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_154.st_size" (identifier "local_154") (. ".") (field_identifier "st_size"))) (!= "!=") (identifier "iVar10")) () ")"))) () ")")) (goto_statement "goto LAB_0001933e;" (goto "goto") (statement_identifier "LAB_0001933e") (; ";"))) (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)local_154.st_size;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)local_154.st_size" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (cast_expression "(int)local_154.st_size" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "local_154.st_size" (identifier "local_154") (. ".") (field_identifier "st_size")))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e2b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e2b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19e2b")) (; ";")) (expression_statement "iVar10 = FUN_0001b850();" (assignment_expression "iVar10 = FUN_0001b850()" (identifier "iVar10") (= "=") (call_expression "FUN_0001b850()" (identifier "FUN_0001b850") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) goto LAB_0001933e;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001933e;" (goto "goto") (statement_identifier "LAB_0001933e") (; ";"))) (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0xc) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e41;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e41" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19e41")) (; ";")) (expression_statement "iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));" (assignment_expression "iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (identifier "iVar8") (= "=") (call_expression "strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (identifier "strcmp") (argument_list "(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar8 != 0) {\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                *(int *)(puVar29 + -0x10) = iVar10;\n                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;\n                free(*(void **)(puVar29 + -0x10));\n                goto LAB_0001933e;\n              }" ({ "{") (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1a12b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1a12b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1a12b")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (goto_statement "goto LAB_0001933e;" (goto "goto") (statement_identifier "LAB_0001933e") (; ";")) (} "}"))) (expression_statement "*(int *)(puVar29 + -0x10) = iVar10;" (assignment_expression "*(int *)(puVar29 + -0x10) = iVar10" (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e55;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e55" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19e55")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19e5d;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19e5d" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19e5d")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (} "}")) (else_clause "else {\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" (else "else") (compound_statement "{\nLAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;\n              free(*(void **)(puVar29 + -0x10));\n            }" ({ "{") (labeled_statement "LAB_00018a69:\n              *(char **)(puVar29 + -0x10) = pcVar20;" (statement_identifier "LAB_00018a69") (: ":") (expression_statement "*(char **)(puVar29 + -0x10) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x10) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "pcVar20")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18a72;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18a72" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18a72")) (; ";")) (expression_statement "free(*(void **)(puVar29 + -0x10));" (call_expression "free(*(void **)(puVar29 + -0x10))" (identifier "free") (argument_list "(*(void **)(puVar29 + -0x10))" (( "(") (pointer_expression "*(void **)(puVar29 + -0x10)" (* "*") (cast_expression "(void **)(puVar29 + -0x10)" (( "(") (type_descriptor "void **" (primitive_type "void") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) () ")"))) (; ";")) (} "}")))) (if_statement "if (*(char *)((int)local_1f0 + 0x25) != '\0') {\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x25) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x25) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x193dc;\n              FUN_00015060();\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x193dc;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x193dc" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x193dc")) (; ";")) (expression_statement "FUN_00015060();" (call_expression "FUN_00015060()" (identifier "FUN_00015060") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_208._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_208._1_3_,1)" (( "(") (field_expression "local_208._1_3_" (identifier "local_208") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "bVar40 = *(byte *)((int)local_1f0 + 0x1d);" (assignment_expression "bVar40 = *(byte *)((int)local_1f0 + 0x1d)" (identifier "bVar40") (= "=") (pointer_expression "*(byte *)((int)local_1f0 + 0x1d)" (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x1d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1d)" (( "(") (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1d")) () ")"))))) (; ";")) (expression_statement "bVar25 = bVar40;" (assignment_expression "bVar25 = bVar40" (identifier "bVar25") (= "=") (identifier "bVar40")) (; ";")) (if_statement "if (bVar40 != 0) {\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }" (if "if") (parenthesized_expression "(bVar40 != 0)" (( "(") (binary_expression "bVar40 != 0" (identifier "bVar40") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;\n              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;\n              *(char **)(puVar29 + -0x10) = local_1f8;\n              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;\n              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));\n              if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = local_1b4._28_4_" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (field_expression "local_1b4._28_4_" (identifier "local_1b4") (. ".") (field_identifier "_28_4_"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (field_expression "local_1b4._24_4_" (identifier "local_1b4") (. ".") (field_identifier "_24_4_"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18aba;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18aba" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18aba")) (; ";")) (expression_statement "iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8));" (assignment_expression "iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" (identifier "iVar10") (= "=") (call_expression "lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" (identifier "lchown") (argument_list "(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),\n                              *(__gid_t *)(puVar29 + -8))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(__uid_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__uid_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__uid_t *" (type_identifier "__uid_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(__gid_t *)(puVar29 + -8)" (* "*") (cast_expression "(__gid_t *)(puVar29 + -8)" (( "(") (type_descriptor "__gid_t *" (type_identifier "__gid_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }\n              else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                bVar25 = 0;\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);\n              }" ({ "{") (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,bVar40)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_208._1_3_,bVar40)" (identifier "CONCAT31") (argument_list "(local_208._1_3_,bVar40)" (( "(") (field_expression "local_208._1_3_" (identifier "local_208") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "bVar40") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" (else "else") (compound_statement "{\n                *(int **)(puVar29 + -0x10) = local_1f0;\n                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;\n                cVar6 = FUN_00015b20();\n                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);\n                if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }\n                bVar25 = 0;\n              }" ({ "{") (expression_statement "*(int **)(puVar29 + -0x10) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0x10) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0x10)" (* "*") (cast_expression "(int **)(puVar29 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18ad3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18ad3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18ad3")) (; ";")) (expression_statement "cVar6 = FUN_00015b20();" (assignment_expression "cVar6 = FUN_00015b20()" (identifier "cVar6") (= "=") (call_expression "FUN_00015b20()" (identifier "FUN_00015b20") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);" (assignment_expression "local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6)" (identifier "local_208") (= "=") (cast_expression "(undefined1 *)CONCAT31(local_208._1_3_,cVar6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_208._1_3_,cVar6)" (identifier "CONCAT31") (argument_list "(local_208._1_3_,cVar6)" (( "(") (field_expression "local_208._1_3_" (identifier "local_208") (. ".") (field_identifier "_1_3_")) (, ",") (identifier "cVar6") () ")"))))) (; ";")) (if_statement "if (cVar6 == '\0') {\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  *(char **)(puVar29 + -4) = pcVar20;\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;\n                  uVar11 = dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;\n                  piVar14 = __errno_location();\n                  *(char **)(puVar29 + -0x14) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x18) = uVar11;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;\n                  error();\n                }" ({ "{") (expression_statement "*(char **)(puVar29 + -4) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -4) = pcVar20" (pointer_expression "*(char **)(puVar29 + -4)" (* "*") (cast_expression "(char **)(puVar29 + -4)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";" (assignment_expression "*(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s"" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (string_literal ""failed to preserve ownership for %s"" (" """) (string_content "failed to preserve ownership for %s") (" """))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19574;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19574" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19574")) (; ";")) (expression_statement "uVar11 = dcgettext();" (assignment_expression "uVar11 = dcgettext()" (identifier "uVar11") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1957b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1957b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1957b")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x14) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x14) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x14)" (* "*") (cast_expression "(char **)(puVar29 + -0x14)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x18) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x18) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_0001958b;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_0001958b" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_0001958b" (& "&") (identifier "UNK_0001958b"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}"))) (} "}")))))) (labeled_statement "LAB_000166da:\n          bVar40 = local_238 != (stat64 *)0x4000;" (statement_identifier "LAB_000166da") (: ":") (expression_statement "bVar40 = local_238 != (stat64 *)0x4000;" (assignment_expression "bVar40 = local_238 != (stat64 *)0x4000" (identifier "bVar40") (= "=") (binary_expression "local_238 != (stat64 *)0x4000" (identifier "local_238") (!= "!=") (cast_expression "(stat64 *)0x4000" (( "(") (type_descriptor "stat64 *" (type_identifier "stat64") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4000")))) (; ";"))) (if_statement "if ((byte)local_1f4 == '\0') {\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }" (if "if") (parenthesized_expression "((byte)local_1f4 == '\0')" (( "(") (binary_expression "(byte)local_1f4 == '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));\n            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;\n            if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }\n          }" ({ "{") (expression_statement "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));" (assignment_expression "local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" (identifier "local_20c") (= "=") (cast_expression "(byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5))" (identifier "CONCAT31") (argument_list "(local_20c._1_3_,*(byte *)(local_1f0 + 5))" (( "(") (field_expression "local_20c._1_3_" (identifier "local_20c") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(byte *)(local_1f0 + 5)" (* "*") (cast_expression "(byte *)(local_1f0 + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 5)" (( "(") (binary_expression "local_1f0 + 5" (identifier "local_1f0") (+ "+") (number_literal "5")) () ")")))) () ")"))))) (; ";")) (expression_statement "bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;" (assignment_expression "bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40" (identifier "bVar7") (= "=") (binary_expression "(*(byte *)(local_1f0 + 5) ^ 1) & bVar40" (parenthesized_expression "(*(byte *)(local_1f0 + 5) ^ 1)" (( "(") (binary_expression "*(byte *)(local_1f0 + 5) ^ 1" (pointer_expression "*(byte *)(local_1f0 + 5)" (* "*") (cast_expression "(byte *)(local_1f0 + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 5)" (( "(") (binary_expression "local_1f0 + 5" (identifier "local_1f0") (+ "+") (number_literal "5")) () ")")))) (^ "^") (number_literal "1")) () ")")) (& "&") (identifier "bVar40"))) (; ";")) (if_statement "if (bVar7 != 0) {\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }" (if "if") (parenthesized_expression "(bVar7 != 0)" (( "(") (binary_expression "bVar7 != 0" (identifier "bVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              bVar2 = *(byte *)((int)local_1f0 + 0x25);\n              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }\n            }" ({ "{") (expression_statement "bVar2 = *(byte *)((int)local_1f0 + 0x25);" (assignment_expression "bVar2 = *(byte *)((int)local_1f0 + 0x25)" (identifier "bVar2") (= "=") (pointer_expression "*(byte *)((int)local_1f0 + 0x25)" (* "*") (cast_expression "(byte *)((int)local_1f0 + 0x25)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x25)" (( "(") (binary_expression "(int)local_1f0 + 0x25" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x25")) () ")"))))) (; ";")) (if_statement "if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x21) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x21) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x21)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x21)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x21)" (( "(") (binary_expression "(int)local_1f0 + 0x21" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x21")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(bVar40 = bVar7, bVar2 != 0)" (( "(") (comma_expression "bVar40 = bVar7, bVar2 != 0" (assignment_expression "bVar40 = bVar7" (identifier "bVar40") (= "=") (identifier "bVar7")) (, ",") (binary_expression "bVar2 != 0" (identifier "bVar2") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                *(int **)(puVar29 + -4) = local_1f0;\n                *(undefined4 *)(puVar29 + -8) = 0;\n                *(uint *)(puVar29 + -0xc) = (uint)bVar2;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;\n                bVar40 = FUN_00015960();\n                if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }\n              }" ({ "{") (expression_statement "*(int **)(puVar29 + -4) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -4) = local_1f0" (pointer_expression "*(int **)(puVar29 + -4)" (* "*") (cast_expression "(int **)(puVar29 + -4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)bVar2;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)bVar2" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (cast_expression "(uint)bVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar2"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x177d2;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x177d2" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x177d2")) (; ";")) (expression_statement "bVar40 = FUN_00015960();" (assignment_expression "bVar40 = FUN_00015960()" (identifier "bVar40") (= "=") (call_expression "FUN_00015960()" (identifier "FUN_00015960") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (bVar40 == 0) {\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }" (if "if") (parenthesized_expression "(bVar40 == 0)" (( "(") (binary_expression "bVar40 == 0" (identifier "bVar40") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));\n                  bVar40 = bVar7;\n                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;\n                }" ({ "{") (expression_statement "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));" (assignment_expression "local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" (identifier "local_1f4") (= "=") (cast_expression "(char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" (identifier "CONCAT31") (argument_list "(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26))" (( "(") (field_expression "local_1f4._1_3_" (identifier "local_1f4") (. ".") (field_identifier "_1_3_")) (, ",") (pointer_expression "*(char *)((int)local_1f0 + 0x26)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x26)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x26)" (( "(") (binary_expression "(int)local_1f0 + 0x26" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x26")) () ")")))) () ")"))))) (; ";")) (expression_statement "bVar40 = bVar7;" (assignment_expression "bVar40 = bVar7" (identifier "bVar40") (= "=") (identifier "bVar7")) (; ";")) (if_statement "if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x26) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x26) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x26)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x26)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x26)" (( "(") (binary_expression "(int)local_1f0 + 0x26" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x26")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00016fad;" (goto "goto") (statement_identifier "LAB_00016fad") (; ";"))) (} "}"))) (} "}"))) (} "}"))) (} "}"))) (expression_statement "uVar9 = 1;" (assignment_expression "uVar9 = 1" (identifier "uVar9") (= "=") (number_literal "1")) (; ";")) (if_statement "if ((byte)local_1fc != '\0') {\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }" (if "if") (parenthesized_expression "((byte)local_1fc != '\0')" (( "(") (binary_expression "(byte)local_1fc != '\0'" (cast_expression "(byte)local_1fc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1fc")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            local_24c = local_24c & 0xffffff00;\n            goto LAB_00016722;\n          }" ({ "{") (expression_statement "local_24c = local_24c & 0xffffff00;" (assignment_expression "local_24c = local_24c & 0xffffff00" (identifier "local_24c") (= "=") (binary_expression "local_24c & 0xffffff00" (identifier "local_24c") (& "&") (number_literal "0xffffff00"))) (; ";")) (goto_statement "goto LAB_00016722;" (goto "goto") (statement_identifier "LAB_00016722") (; ";")) (} "}"))) (labeled_statement "LAB_00016794:\n          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;" (statement_identifier "LAB_00016794") (: ":") (if_statement "if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))\n          goto LAB_0001614a;" (if "if") (parenthesized_expression "(((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))" (( "(") (binary_expression "((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0)" (parenthesized_expression "((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x17) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x17) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x17)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x17)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x17)" (( "(") (binary_expression "(int)local_1f0 + 0x17" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x17")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(bVar40 != 0)" (( "(") (binary_expression "bVar40 != 0" (identifier "bVar40") (!= "!=") (number_literal "0")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(bVar25 != 0)" (( "(") (binary_expression "bVar25 != 0" (identifier "bVar25") (!= "!=") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";")))) (} "}")))) (if_statement "if (*(char *)((int)local_1f0 + 0x1f) == '\0') {\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }\n        else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1f) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1f) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1f)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1f)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1f)" (( "(") (binary_expression "(int)local_1f0 + 0x1f" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1f")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;\n          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;\n          *(int **)(puVar29 + -0xc) = local_1f0;\n          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n          *(undefined4 *)(puVar29 + -0x14) = 0x17511;\n          cVar6 = FUN_00014b00();\n          if (cVar6 != '\0') goto LAB_0001614a;\n          cVar6 = (char)local_1f0[10];\n        }" ({ "{") (labeled_statement "LAB_00016870:\n          if ((char)local_208 == '\0') goto LAB_0001687d;" (statement_identifier "LAB_00016870") (: ":") (if_statement "if ((char)local_208 == '\0') goto LAB_0001687d;" (if "if") (parenthesized_expression "((char)local_208 == '\0')" (( "(") (binary_expression "(char)local_208 == '\0'" (cast_expression "(char)local_208" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_208")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001687d;" (goto "goto") (statement_identifier "LAB_0001687d") (; ";")))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x27) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x27)" (( "(") (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x27")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";"))) (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x17511;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x17511" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x17511")) (; ";")) (expression_statement "cVar6 = FUN_00014b00();" (assignment_expression "cVar6 = FUN_00014b00()" (identifier "cVar6") (= "=") (call_expression "FUN_00014b00()" (identifier "FUN_00014b00") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (cVar6 != '\0') goto LAB_0001614a;" (if "if") (parenthesized_expression "(cVar6 != '\0')" (( "(") (binary_expression "cVar6 != '\0'" (identifier "cVar6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";"))) (expression_statement "cVar6 = (char)local_1f0[10];" (assignment_expression "cVar6 = (char)local_1f0[10]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[10]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[10]" (identifier "local_1f0") ([ "[") (number_literal "10") (] "]")))) (; ";")) (} "}")) (else_clause "else {\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" (else "else") (compound_statement "{\n          local_30 = local_174;\n          local_2c = local_170;\n          local_28 = local_16c;\n          local_24 = local_168;\n          if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }\n          *(__time_t **)(puVar29 + -0xc) = &local_30;\n          *(char **)(puVar29 + -0x10) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x14) = 0x18652;\n          iVar10 = FUN_00022580();\n          if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }\nLAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }\n          if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }\n          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }\n          *(uint *)(puVar29 + -0x10) = local_204;\n          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;\n          *(char **)(puVar29 + -0x18) = local_1f8;\n          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;\n          *(char **)(puVar29 + -0x20) = local_200;\n          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;\n          iVar10 = FUN_0001b720();\n          if (iVar10 == 0) goto LAB_0001614a;\n          cVar6 = (char)local_1f0[9];\n        }" ({ "{") (expression_statement "local_30 = local_174;" (assignment_expression "local_30 = local_174" (identifier "local_30") (= "=") (identifier "local_174")) (; ";")) (expression_statement "local_2c = local_170;" (assignment_expression "local_2c = local_170" (identifier "local_2c") (= "=") (identifier "local_170")) (; ";")) (expression_statement "local_28 = local_16c;" (assignment_expression "local_28 = local_16c" (identifier "local_28") (= "=") (identifier "local_16c")) (; ";")) (expression_statement "local_24 = local_168;" (assignment_expression "local_24 = local_168" (identifier "local_24") (= "=") (identifier "local_168")) (; ";")) (if_statement "if ((char)local_208 != '\0') {\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }" (if "if") (parenthesized_expression "((char)local_208 != '\0')" (( "(") (binary_expression "(char)local_208 != '\0'" (cast_expression "(char)local_208" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "local_208")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            *(__time_t **)(puVar29 + -0xc) = &local_30;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16805;\n            iVar10 = FUN_000225b0();\n            if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }\n            goto LAB_00016870;\n          }" ({ "{") (expression_statement "*(__time_t **)(puVar29 + -0xc) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -0xc) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -0xc)" (* "*") (cast_expression "(__time_t **)(puVar29 + -0xc)" (( "(") (type_descriptor "__time_t **" (type_identifier "__time_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16805;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16805" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16805")) (; ";")) (expression_statement "iVar10 = FUN_000225b0();" (assignment_expression "iVar10 = FUN_000225b0()" (identifier "iVar10") (= "=") (call_expression "FUN_000225b0()" (identifier "FUN_000225b0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              *(undefined4 *)(puVar29 + -4) = 0x16811;\n              piVar14 = __errno_location();\n              if (*piVar14 != 0x26) goto LAB_00016816;\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x16811;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x16811" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x16811")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*piVar14 != 0x26) goto LAB_00016816;" (if "if") (parenthesized_expression "(*piVar14 != 0x26)" (( "(") (binary_expression "*piVar14 != 0x26" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (!= "!=") (number_literal "0x26")) () ")")) (goto_statement "goto LAB_00016816;" (goto "goto") (statement_identifier "LAB_00016816") (; ";"))) (} "}"))) (goto_statement "goto LAB_00016870;" (goto "goto") (statement_identifier "LAB_00016870") (; ";")) (} "}"))) (expression_statement "*(__time_t **)(puVar29 + -0xc) = &local_30;" (assignment_expression "*(__time_t **)(puVar29 + -0xc) = &local_30" (pointer_expression "*(__time_t **)(puVar29 + -0xc)" (* "*") (cast_expression "(__time_t **)(puVar29 + -0xc)" (( "(") (type_descriptor "__time_t **" (type_identifier "__time_t") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18652;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18652" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18652")) (; ";")) (expression_statement "iVar10 = FUN_00022580();" (assignment_expression "iVar10 = FUN_00022580()" (identifier "iVar10") (= "=") (call_expression "FUN_00022580()" (identifier "FUN_00022580") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x10) = 4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x16826;\n            uVar11 = FUN_00020540();\n            *(undefined4 *)(puVar29 + -8) = 5;\n            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;\n            *(undefined4 *)(puVar29 + -0x10) = 0;\n            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;\n            local_1fc = dcgettext();\n            *(undefined4 *)(puVar29 + -0x14) = 0x16846;\n            piVar14 = __errno_location();\n            uVar9 = local_1fc;\n            *(undefined4 *)(puVar29 + -0x14) = uVar11;\n            *(uint *)(puVar29 + -0x18) = uVar9;\n            *(int *)(puVar29 + -0x1c) = *piVar14;\n            *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;\n            error();\n          }" ({ "{") (labeled_statement "LAB_00016816:\n            *(char **)(puVar29 + -0xc) = local_1f8;" (statement_identifier "LAB_00016816") (: ":") (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";"))) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16826;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16826" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16826")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb03f" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb03f"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x1683b;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x1683b" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x1683b")) (; ";")) (expression_statement "local_1fc = dcgettext();" (assignment_expression "local_1fc = dcgettext()" (identifier "local_1fc") (= "=") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16846;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16846" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16846")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar9 = local_1fc;" (assignment_expression "uVar9 = local_1fc" (identifier "uVar9") (= "=") (identifier "local_1fc")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(uint *)(puVar29 + -0x18) = uVar9;" (assignment_expression "*(uint *)(puVar29 + -0x18) = uVar9" (pointer_expression "*(uint *)(puVar29 + -0x18)" (* "*") (cast_expression "(uint *)(puVar29 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_00016857;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_00016857" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_00016857" (& "&") (identifier "UNK_00016857"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_0001687d:\n          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" (statement_identifier "LAB_0001687d") (: ":") (if_statement "if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))) {\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid))))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0') &&\n             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1d) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1d) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1d)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1d)" (( "(") (binary_expression "(int)local_1f0 + 0x1d" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)))" (( "(") (parenthesized_expression "(((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid))" (( "(") (binary_expression "((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||\n              (local_1b4._28_4_ != local_154.st_gid)" (parenthesized_expression "((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid))" (( "(") (binary_expression "(byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)" (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (|| "||") (parenthesized_expression "(local_1b4._24_4_ != local_154.st_uid)" (( "(") (binary_expression "local_1b4._24_4_ != local_154.st_uid" (field_expression "local_1b4._24_4_" (identifier "local_1b4") (. ".") (field_identifier "_24_4_")) (!= "!=") (field_expression "local_154.st_uid" (identifier "local_154") (. ".") (field_identifier "st_uid"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(local_1b4._28_4_ != local_154.st_gid)" (( "(") (binary_expression "local_1b4._28_4_ != local_154.st_gid" (field_expression "local_1b4._28_4_" (identifier "local_1b4") (. ".") (field_identifier "_28_4_")) (!= "!=") (field_expression "local_154.st_gid" (identifier "local_154") (. ".") (field_identifier "st_gid"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n            *(stat64 **)(puVar29 + -8) = &local_154;\n            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;\n            *(undefined1 **)(puVar29 + -0x10) = local_1b4;\n            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;\n            iVar10 = FUN_00015b60();\n            if (iVar10 == -1) goto LAB_00016148;\n            if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }\n          }" ({ "{") (expression_statement "*(stat64 **)(puVar29 + -8) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_154" (& "&") (identifier "local_154"))) (; ";")) (expression_statement "*(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;" (assignment_expression "*(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(uint)local_1f4 & 0xff" (cast_expression "(uint)local_1f4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "local_1f4")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "*(undefined1 **)(puVar29 + -0x10) = local_1b4;" (assignment_expression "*(undefined1 **)(puVar29 + -0x10) = local_1b4" (pointer_expression "*(undefined1 **)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1b4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x168d3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x168d3" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x168d3")) (; ";")) (expression_statement "iVar10 = FUN_00015b60();" (assignment_expression "iVar10 = FUN_00015b60()" (identifier "iVar10") (= "=") (call_expression "FUN_00015b60()" (identifier "FUN_00015b60") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == -1) goto LAB_00016148;" (if "if") (parenthesized_expression "(iVar10 == -1)" (( "(") (binary_expression "iVar10 == -1" (identifier "iVar10") (== "==") (number_literal "-1")) () ")")) (goto_statement "goto LAB_00016148;" (goto "goto") (statement_identifier "LAB_00016148") (; ";"))) (if_statement "if (iVar10 == 0) {\n              local_204 = local_204 & 0xfffff1ff;\n            }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              local_204 = local_204 & 0xfffff1ff;\n            }" ({ "{") (expression_statement "local_204 = local_204 & 0xfffff1ff;" (assignment_expression "local_204 = local_204 & 0xfffff1ff" (identifier "local_204") (= "=") (binary_expression "local_204 & 0xfffff1ff" (identifier "local_204") (& "&") (number_literal "0xfffff1ff"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (*(char *)((int)local_1f0 + 0x27) != '\0') {\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x27) != '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x27) != '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x27)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x27)" (( "(") (binary_expression "(int)local_1f0 + 0x27" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x27")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            *(int **)(puVar29 + -0xc) = local_1f0;\n            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;\n            cVar6 = FUN_00014b00();\n            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;\n          }" ({ "{") (expression_statement "*(int **)(puVar29 + -0xc) = local_1f0;" (assignment_expression "*(int **)(puVar29 + -0xc) = local_1f0" (pointer_expression "*(int **)(puVar29 + -0xc)" (* "*") (cast_expression "(int **)(puVar29 + -0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18c76;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18c76" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18c76")) (; ";")) (expression_statement "cVar6 = FUN_00014b00();" (assignment_expression "cVar6 = FUN_00014b00()" (identifier "cVar6") (= "=") (call_expression "FUN_00014b00()" (identifier "FUN_00014b00") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;" (if "if") (parenthesized_expression "((cVar6 == '\0') && ((char)local_1f0[10] != '\0'))" (( "(") (binary_expression "(cVar6 == '\0') && ((char)local_1f0[10] != '\0')" (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((char)local_1f0[10] != '\0')" (( "(") (binary_expression "(char)local_1f0[10] != '\0'" (cast_expression "(char)local_1f0[10]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[10]" (identifier "local_1f0") ([ "[") (number_literal "10") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_00016148;" (goto "goto") (statement_identifier "LAB_00016148") (; ";"))) (} "}"))) (if_statement "if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }" (if "if") (parenthesized_expression "((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))" (( "(") (binary_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')" (parenthesized_expression "(*(char *)((int)local_1f0 + 0x1e) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x1e) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x1e)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x1e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x1e)" (( "(") (binary_expression "(int)local_1f0 + 0x1e" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x1e")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((char)local_1f0[6] == '\0')" (( "(") (binary_expression "(char)local_1f0[6] == '\0'" (cast_expression "(char)local_1f0[6]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[6]" (identifier "local_1f0") ([ "[") (number_literal "6") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }\n            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;\n            *(char **)(puVar29 + -0x10) = local_1f8;\n            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;\n            iVar10 = FUN_0001b7d0();\n            if (iVar10 == 0) goto LAB_0001614a;\n            goto LAB_00016148;\n          }" ({ "{") (if_statement "if (*(char *)((int)local_1f0 + 0x2b) == '\0') {\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }\n            else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" (if "if") (parenthesized_expression "(*(char *)((int)local_1f0 + 0x2b) == '\0')" (( "(") (binary_expression "*(char *)((int)local_1f0 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)local_1f0 + 0x2b)" (* "*") (cast_expression "(char *)((int)local_1f0 + 0x2b)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1f0 + 0x2b)" (( "(") (binary_expression "(int)local_1f0 + 0x2b" (cast_expression "(int)local_1f0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1f0")) (+ "+") (number_literal "0x2b")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }\n              uVar22 = 0x1b6;\n              if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }\n              *(undefined4 *)(puVar29 + -4) = 0x191a8;\n              uVar21 = FUN_00015d90();\n              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;\n            }" ({ "{") (if_statement "if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }" (if "if") (parenthesized_expression "((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0)" (( "(") (binary_expression "(*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0" (parenthesized_expression "(*(byte *)(local_1f0 + 8) & (byte)local_1f4)" (( "(") (binary_expression "*(byte *)(local_1f0 + 8) & (byte)local_1f4" (pointer_expression "*(byte *)(local_1f0 + 8)" (* "*") (cast_expression "(byte *)(local_1f0 + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_1f0 + 8)" (( "(") (binary_expression "local_1f0 + 8" (identifier "local_1f0") (+ "+") (number_literal "8")) () ")")))) (& "&") (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4"))) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }\n                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;\n                *(char **)(puVar29 + -0x10) = local_1f8;\n                *(undefined4 *)(puVar29 + -0x14) = 0x16976;\n                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));\n                if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }\n                goto LAB_0001614a;\n              }" ({ "{") (if_statement "if (local_23c == 0) {\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }\n                else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" (if "if") (parenthesized_expression "(local_23c == 0)" (( "(") (binary_expression "local_23c == 0" (identifier "local_23c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;\n                }" ({ "{") (labeled_statement "LAB_0001694e:\n                  if ((byte)local_224 == '\0') goto LAB_0001614a;" (statement_identifier "LAB_0001694e") (: ":") (if_statement "if ((byte)local_224 == '\0') goto LAB_0001614a;" (if "if") (parenthesized_expression "((byte)local_224 == '\0')" (( "(") (binary_expression "(byte)local_224 == '\0'" (cast_expression "(byte)local_224" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_224")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";")))) (} "}")) (else_clause "else {\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" (else "else") (compound_statement "{\n                  *(undefined4 *)(puVar29 + -4) = 0x191ba;\n                  uVar22 = FUN_00015d90();\n                  local_23c = local_23c & ~uVar22;\n                  if (local_23c == 0) goto LAB_0001694e;\n                  if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }\n                }" ({ "{") (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x191ba;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x191ba" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x191ba")) (; ";")) (expression_statement "uVar22 = FUN_00015d90();" (assignment_expression "uVar22 = FUN_00015d90()" (identifier "uVar22") (= "=") (call_expression "FUN_00015d90()" (identifier "FUN_00015d90") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_23c = local_23c & ~uVar22;" (assignment_expression "local_23c = local_23c & ~uVar22" (identifier "local_23c") (= "=") (binary_expression "local_23c & ~uVar22" (identifier "local_23c") (& "&") (unary_expression "~uVar22" (~ "~") (identifier "uVar22")))) (; ";")) (if_statement "if (local_23c == 0) goto LAB_0001694e;" (if "if") (parenthesized_expression "(local_23c == 0)" (( "(") (binary_expression "local_23c == 0" (identifier "local_23c") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001694e;" (goto "goto") (statement_identifier "LAB_0001694e") (; ";"))) (if_statement "if ((byte)local_224 != '\x01') {\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }" (if "if") (parenthesized_expression "((byte)local_224 != '\x01')" (( "(") (binary_expression "(byte)local_224 != '\x01'" (cast_expression "(byte)local_224" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_224")) (!= "!=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (compound_statement "{\n                    if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }\n                    local_270 = local_154.st_mode;\n                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;\n                  }" ({ "{") (if_statement "if ((byte)local_1f4 != '\0') {\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }" (if "if") (parenthesized_expression "((byte)local_1f4 != '\0')" (( "(") (binary_expression "(byte)local_1f4 != '\0'" (cast_expression "(byte)local_1f4" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_1f4")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                      *(uint *)(puVar29 + -4) = ~uVar22;\n                      *(stat64 **)(puVar29 + -8) = &local_154;\n                      *(char **)(puVar29 + -0xc) = local_1f8;\n                      *(undefined4 *)(puVar29 + -0x10) = 3;\n                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;\n                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));\n                      if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }\n                    }" ({ "{") (expression_statement "*(uint *)(puVar29 + -4) = ~uVar22;" (assignment_expression "*(uint *)(puVar29 + -4) = ~uVar22" (pointer_expression "*(uint *)(puVar29 + -4)" (* "*") (cast_expression "(uint *)(puVar29 + -4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (unary_expression "~uVar22" (~ "~") (identifier "uVar22"))) (; ";")) (expression_statement "*(stat64 **)(puVar29 + -8) = &local_154;" (assignment_expression "*(stat64 **)(puVar29 + -8) = &local_154" (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "&local_154" (& "&") (identifier "local_154"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 3;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 3" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x19977;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x19977" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x19977")) (; ";")) (expression_statement "iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8));" (assignment_expression "iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" (identifier "iVar10") (= "=") (call_expression "__lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" (identifier "__lxstat64") (argument_list "(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),\n                                          *(stat64 **)(puVar29 + -8))" (( "(") (pointer_expression "*(int *)(puVar29 + -0x10)" (* "*") (cast_expression "(int *)(puVar29 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (, ",") (pointer_expression "*(stat64 **)(puVar29 + -8)" (* "*") (cast_expression "(stat64 **)(puVar29 + -8)" (( "(") (type_descriptor "stat64 **" (type_identifier "stat64") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        *(int *)(puVar29 + -4) = iVar10;\n                        *(int *)(puVar29 + -8) = iVar10;\n                        puVar30 = puVar29 + -0xc;\n                        *(char **)(puVar29 + -0xc) = local_1f8;\n                        goto LAB_0001620e;\n                      }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "puVar30 = puVar29 + -0xc;" (assignment_expression "puVar30 = puVar29 + -0xc" (identifier "puVar30") (= "=") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (goto_statement "goto LAB_0001620e;" (goto "goto") (statement_identifier "LAB_0001620e") (; ";")) (} "}"))) (} "}"))) (expression_statement "local_270 = local_154.st_mode;" (assignment_expression "local_270 = local_154.st_mode" (identifier "local_270") (= "=") (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode"))) (; ";")) (if_statement "if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;" (if "if") (parenthesized_expression "((local_23c & ~local_154.st_mode) == 0)" (( "(") (binary_expression "(local_23c & ~local_154.st_mode) == 0" (parenthesized_expression "(local_23c & ~local_154.st_mode)" (( "(") (binary_expression "local_23c & ~local_154.st_mode" (identifier "local_23c") (& "&") (unary_expression "~local_154.st_mode" (~ "~") (field_expression "local_154.st_mode" (identifier "local_154") (. ".") (field_identifier "st_mode")))) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";"))) (} "}"))) (} "}")))) (expression_statement "*(uint *)(puVar29 + -0xc) = local_270 | local_23c;" (assignment_expression "*(uint *)(puVar29 + -0xc) = local_270 | local_23c" (pointer_expression "*(uint *)(puVar29 + -0xc)" (* "*") (cast_expression "(uint *)(puVar29 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "local_270 | local_23c" (identifier "local_270") (| "|") (identifier "local_23c"))) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16976;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16976" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16976")) (; ";")) (expression_statement "iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));" (assignment_expression "iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" (identifier "iVar10") (= "=") (call_expression "chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" (identifier "chmod") (argument_list "(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc))" (( "(") (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (, ",") (pointer_expression "*(__mode_t *)(puVar29 + -0xc)" (* "*") (cast_expression "(__mode_t *)(puVar29 + -0xc)" (( "(") (type_descriptor "__mode_t *" (type_identifier "__mode_t") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar10 != 0) {\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }" (if "if") (parenthesized_expression "(iVar10 != 0)" (( "(") (binary_expression "iVar10 != 0" (identifier "iVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  *(int *)(puVar29 + -4) = iVar10;\n                  *(int *)(puVar29 + -8) = iVar10;\n                  *(char **)(puVar29 + -0xc) = local_1f8;\n                  *(undefined4 *)(puVar29 + -0x10) = 4;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;\n                  uVar11 = FUN_00020540();\n                  *(undefined4 *)(puVar29 + -8) = 5;\n                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;\n                  *(undefined4 *)(puVar29 + -0x10) = 0;\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;\n                  local_1f4 = (char *)dcgettext();\n                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;\n                  piVar14 = __errno_location();\n                  pcVar20 = local_1f4;\n                  *(undefined4 *)(puVar29 + -0x14) = uVar11;\n                  *(char **)(puVar29 + -0x18) = pcVar20;\n                  *(int *)(puVar29 + -0x1c) = *piVar14;\n                  *(undefined4 *)(puVar29 + -0x20) = 0;\n                    \n                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;\n                  error();\n                }" ({ "{") (expression_statement "*(int *)(puVar29 + -4) = iVar10;" (assignment_expression "*(int *)(puVar29 + -4) = iVar10" (pointer_expression "*(int *)(puVar29 + -4)" (* "*") (cast_expression "(int *)(puVar29 + -4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(int *)(puVar29 + -8) = iVar10;" (assignment_expression "*(int *)(puVar29 + -8) = iVar10" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar10")) (; ";")) (expression_statement "*(char **)(puVar29 + -0xc) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0xc) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0xc)" (* "*") (cast_expression "(char **)(puVar29 + -0xc)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 4;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 4" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x16990;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x16990" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x16990")) (; ";")) (expression_statement "uVar11 = FUN_00020540();" (assignment_expression "uVar11 = FUN_00020540()" (identifier "uVar11") (= "=") (call_expression "FUN_00020540()" (identifier "FUN_00020540") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -8) = 5;" (assignment_expression "*(undefined4 *)(puVar29 + -8) = 5" (pointer_expression "*(undefined4 *)(puVar29 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;" (assignment_expression "*(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027" (pointer_expression "*(int *)(puVar29 + -0xc)" (* "*") (cast_expression "(int *)(puVar29 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "(int)ppuVar28 + -0xb027" (cast_expression "(int)ppuVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar28")) (+ "+") (number_literal "-0xb027"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x169a5;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x169a5" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x169a5")) (; ";")) (expression_statement "local_1f4 = (char *)dcgettext();" (assignment_expression "local_1f4 = (char *)dcgettext()" (identifier "local_1f4") (= "=") (cast_expression "(char *)dcgettext()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x169b0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x169b0" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x169b0")) (; ";")) (expression_statement "piVar14 = __errno_location();" (assignment_expression "piVar14 = __errno_location()" (identifier "piVar14") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pcVar20 = local_1f4;" (assignment_expression "pcVar20 = local_1f4" (identifier "pcVar20") (= "=") (identifier "local_1f4")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = uVar11;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = uVar11" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x18) = pcVar20;" (assignment_expression "*(char **)(puVar29 + -0x18) = pcVar20" (pointer_expression "*(char **)(puVar29 + -0x18)" (* "*") (cast_expression "(char **)(puVar29 + -0x18)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "pcVar20")) (; ";")) (expression_statement "*(int *)(puVar29 + -0x1c) = *piVar14;" (assignment_expression "*(int *)(puVar29 + -0x1c) = *piVar14" (pointer_expression "*(int *)(puVar29 + -0x1c)" (* "*") (cast_expression "(int *)(puVar29 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x20) = 0;" (assignment_expression "*(undefined4 *)(puVar29 + -0x20) = 0" (pointer_expression "*(undefined4 *)(puVar29 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined **)(puVar29 + -0x24) = &UNK_000169c1;" (assignment_expression "*(undefined **)(puVar29 + -0x24) = &UNK_000169c1" (pointer_expression "*(undefined **)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined **)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (pointer_expression "&UNK_000169c1" (& "&") (identifier "UNK_000169c1"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";")) (} "}"))) (expression_statement "uVar22 = 0x1b6;" (assignment_expression "uVar22 = 0x1b6" (identifier "uVar22") (= "=") (number_literal "0x1b6")) (; ";")) (if_statement "if ((local_204 & 0x7000) == 0x4000) {\n                uVar22 = 0x1ff;\n              }" (if "if") (parenthesized_expression "((local_204 & 0x7000) == 0x4000)" (( "(") (binary_expression "(local_204 & 0x7000) == 0x4000" (parenthesized_expression "(local_204 & 0x7000)" (( "(") (binary_expression "local_204 & 0x7000" (identifier "local_204") (& "&") (number_literal "0x7000")) () ")")) (== "==") (number_literal "0x4000")) () ")")) (compound_statement "{\n                uVar22 = 0x1ff;\n              }" ({ "{") (expression_statement "uVar22 = 0x1ff;" (assignment_expression "uVar22 = 0x1ff" (identifier "uVar22") (= "=") (number_literal "0x1ff")) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x191a8;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x191a8" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x191a8")) (; ";")) (expression_statement "uVar21 = FUN_00015d90();" (assignment_expression "uVar21 = FUN_00015d90()" (identifier "uVar21") (= "=") (call_expression "FUN_00015d90()" (identifier "FUN_00015d90") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(uint *)(puVar29 + -8) = ~uVar21 & uVar22;" (assignment_expression "*(uint *)(puVar29 + -8) = ~uVar21 & uVar22" (pointer_expression "*(uint *)(puVar29 + -8)" (* "*") (cast_expression "(uint *)(puVar29 + -8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "~uVar21 & uVar22" (unary_expression "~uVar21" (~ "~") (identifier "uVar21")) (& "&") (identifier "uVar22"))) (; ";")) (} "}")) (else_clause "else {\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" (else "else") (compound_statement "{\n              *(int *)(puVar29 + -8) = local_1f0[4];\n            }" ({ "{") (expression_statement "*(int *)(puVar29 + -8) = local_1f0[4];" (assignment_expression "*(int *)(puVar29 + -8) = local_1f0[4]" (pointer_expression "*(int *)(puVar29 + -8)" (* "*") (cast_expression "(int *)(puVar29 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -8)" (( "(") (binary_expression "puVar29 + -8" (identifier "puVar29") (+ "+") (number_literal "-8")) () ")")))) (= "=") (subscript_expression "local_1f0[4]" (identifier "local_1f0") ([ "[") (number_literal "4") (] "]"))) (; ";")) (} "}")))) (expression_statement "*(undefined4 *)(puVar29 + -0xc) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0xc) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0xc)" (( "(") (binary_expression "puVar29 + -0xc" (identifier "puVar29") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x10) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x10) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x10)" (* "*") (cast_expression "(char **)(puVar29 + -0x10)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0x18ece;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0x18ece" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x18ece")) (; ";")) (expression_statement "iVar10 = FUN_0001b7d0();" (assignment_expression "iVar10 = FUN_0001b7d0()" (identifier "iVar10") (= "=") (call_expression "FUN_0001b7d0()" (identifier "FUN_0001b7d0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) goto LAB_0001614a;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";"))) (goto_statement "goto LAB_00016148;" (goto "goto") (statement_identifier "LAB_00016148") (; ";")) (} "}"))) (expression_statement "*(uint *)(puVar29 + -0x10) = local_204;" (assignment_expression "*(uint *)(puVar29 + -0x10) = local_204" (pointer_expression "*(uint *)(puVar29 + -0x10)" (* "*") (cast_expression "(uint *)(puVar29 + -0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x10)" (( "(") (binary_expression "puVar29 + -0x10" (identifier "puVar29") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_204")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x14) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x14) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x14)" (( "(") (binary_expression "puVar29 + -0x14" (identifier "puVar29") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x18) = local_1f8;" (assignment_expression "*(char **)(puVar29 + -0x18) = local_1f8" (pointer_expression "*(char **)(puVar29 + -0x18)" (* "*") (cast_expression "(char **)(puVar29 + -0x18)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x18)" (( "(") (binary_expression "puVar29 + -0x18" (identifier "puVar29") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;" (assignment_expression "*(undefined4 *)(puVar29 + -0x1c) = 0xffffffff" (pointer_expression "*(undefined4 *)(puVar29 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x1c)" (( "(") (binary_expression "puVar29 + -0x1c" (identifier "puVar29") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "*(char **)(puVar29 + -0x20) = local_200;" (assignment_expression "*(char **)(puVar29 + -0x20) = local_200" (pointer_expression "*(char **)(puVar29 + -0x20)" (* "*") (cast_expression "(char **)(puVar29 + -0x20)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar29 + -0x20)" (( "(") (binary_expression "puVar29 + -0x20" (identifier "puVar29") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_200")) (; ";")) (expression_statement "*(undefined4 *)(puVar29 + -0x24) = 0x183b6;" (assignment_expression "*(undefined4 *)(puVar29 + -0x24) = 0x183b6" (pointer_expression "*(undefined4 *)(puVar29 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -0x24)" (( "(") (binary_expression "puVar29 + -0x24" (identifier "puVar29") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x183b6")) (; ";")) (expression_statement "iVar10 = FUN_0001b720();" (assignment_expression "iVar10 = FUN_0001b720()" (identifier "iVar10") (= "=") (call_expression "FUN_0001b720()" (identifier "FUN_0001b720") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) goto LAB_0001614a;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";"))) (expression_statement "cVar6 = (char)local_1f0[9];" (assignment_expression "cVar6 = (char)local_1f0[9]" (identifier "cVar6") (= "=") (cast_expression "(char)local_1f0[9]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_1f0[9]" (identifier "local_1f0") ([ "[") (number_literal "9") (] "]")))) (; ";")) (} "}")))) (if_statement "if (cVar6 == '\0') goto LAB_0001614a;" (if "if") (parenthesized_expression "(cVar6 == '\0')" (( "(") (binary_expression "cVar6 == '\0'" (identifier "cVar6") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0001614a;" (goto "goto") (statement_identifier "LAB_0001614a") (; ";"))) (} "}"))) (} "}")))) (} "}")))) (labeled_statement "LAB_00016148:\n  uVar9 = 0;" (statement_identifier "LAB_00016148") (: ":") (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" (identifier "uVar9") (= "=") (number_literal "0")) (; ";"))) (labeled_statement "LAB_0001614a:\n  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }" (statement_identifier "LAB_0001614a") (: ":") (if_statement "if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return uVar9;\n  }" (if "if") (parenthesized_expression "(local_20 == *(int *)(in_GS_OFFSET + 0x14))" (( "(") (binary_expression "local_20 == *(int *)(in_GS_OFFSET + 0x14)" (identifier "local_20") (== "==") (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" (* "*") (cast_expression "(int *)(in_GS_OFFSET + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_GS_OFFSET + 0x14)" (( "(") (binary_expression "in_GS_OFFSET + 0x14" (identifier "in_GS_OFFSET") (+ "+") (number_literal "0x14")) () ")"))))) () ")")) (compound_statement "{\n    return uVar9;\n  }" ({ "{") (return_statement "return uVar9;" (return "return") (identifier "uVar9") (; ";")) (} "}")))) (expression_statement "*(undefined4 *)(puVar29 + -4) = 0x19855;" (assignment_expression "*(undefined4 *)(puVar29 + -4) = 0x19855" (pointer_expression "*(undefined4 *)(puVar29 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar29 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar29 + -4)" (( "(") (binary_expression "puVar29 + -4" (identifier "puVar29") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x19855")) (; ";")) (expression_statement "FUN_0002bcb0();" (call_expression "FUN_0002bcb0()" (identifier "FUN_0002bcb0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Enum "savedir_option": Some values do not have unique names */

type_1 __regparm3
function_1(char *src_name,char *dst_name,type_1 new_dst,type_2 *parent,type_3 *ancestors,
             type_4 *x,type_1 command_line_arg,type_1 *first_dir_created_per_command_line_arg,
             type_1 *copy_into_self,type_1 *rename_succeeded)

{
  type_5 *puVar1;
  int var_161;
  type_6 cVar3;
  type_1 var_157;
  type_7 var_55;
  bool bVar6;
  type_1 *p_Var7;
  type_6 *var_134;
  type_1 *p_Var9;
  type_4 *pcVar10;
  type_8 _Var11;
  type_1 var_83;
  char var_28;
  type_9 var_150;
  int var_9;
  type_10 var_24;
  int var_3;
  char *var_30;
  type_5 uVar19;
  type_2 *psVar20;
  int *piVar21;
  char *var_154;
  type_11 *var_16;
  size_t var_42;
  type_11 *pHVar25;
  type_10 var_101;
  type_12 _Var27;
  type_6 *var_107;
  type_13 extraout_var;
  type_3 *var_75;
  type_14 mVar30;
  type_13 extraout_var_00;
  type_4 *var_141;
  type_13 extraout_var_01;
  type_5 extraout_ECX;
  type_5 extraout_ECX_00;
  type_5 extraout_ECX_01;
  type_5 extraout_ECX_02;
  type_5 extraout_ECX_03;
  type_5 extraout_ECX_04;
  type_5 extraout_ECX_05;
  type_5 extraout_ECX_06;
  type_5 extraout_ECX_07;
  type_5 extraout_ECX_08;
  type_5 extraout_ECX_09;
  type_5 extraout_ECX_10;
  type_5 extraout_ECX_11;
  type_5 extraout_ECX_12;
  type_5 extraout_ECX_13;
  type_5 extraout_ECX_14;
  type_9 var_25;
  type_15 *psVar33;
  type_5 extraout_EDX;
  type_5 extraout_EDX_00;
  int var_116;
  type_5 extraout_EDX_01;
  type_16 **var_70;
  type_17 *var_72;
  type_5 *var_11;
  type_5 *puVar38;
  type_18 *puVar39;
  type_18 *var_71;
  type_17 *poVar41;
  type_17 *poVar42;
  type_9 *var_87;
  type_19 var_35;
  type_19 var_38;
  type_2 *psVar46;
  int var_2;
  type_18 uVar47;
  type_18 uVar48;
  type_9 var_144;
  bool var_52;
  type_20 var_124;
  type_13 in_stack_00000011;
  type_18 var_50 [7];
  char var_112;
  type_10 var_93;
  type_16 **local_280;
  type_1 *local_27c;
  type_10 var_145;
  type_21 var_125;
  type_10 var_160;
  type_6 *var_119;
  int var_118;
  type_10 var_117;
  int var_120;
  type_10 local_25c;
  type_6 *var_104;
  type_6 *var_122;
  int var_121;
  type_10 var_77;
  int local_248;
  type_10 var_139;
  type_15 *local_240;
  type_10 var_41;
  type_15 *var_90;
  type_15 *var_132;
  type_11 *var_40;
  type_2 *var_80;
  type_3 *var_74;
  type_8 local_224;
  type_6 *var_84;
  type_6 *var_106;
  int var_115;
  type_2 *var_66;
  type_8 local_210;
  type_2 *local_20c;
  type_1 *var_4;
  type_10 var_17;
  char *local_200;
  type_10 var_23;
  char *local_1f8;
  char *local_1f4;
  type_4 *local_1f0;
  type_1 read_hole;
  type_1 var_136;
  int var_130;
  type_1 var_85;
  type_5 local_1d0;
  type_15 *var_113;
  char var_111;
  char var_110;
  type_22 var_114;
  type_2 src_sb;
  type_2 dst_sb;
  type_2 tmp_dst_sb;
  type_2 dst_back_sb;
  type_23 type_23 [2];
  
  var_144 = 0;
  var_70 = &_GLOBAL_OFFSET_TABLE_;
  local_200 = src_name;
  local_1f8 = dst_name;
  var_80 = parent;
  var_84 = (type_6 *)copy_into_self;
  var_106 = (type_6 *)first_dir_created_per_command_line_arg;
  var_74 = ancestors;
  var_4 = rename_succeeded;
  local_1f0 = x;
  var_23 = _command_line_arg;
  local_1f4 = (char *)var_1(local_1f4._1_3_,new_dst);
  local_224 = var_1(local_224._1_3_,command_line_arg);
  var_161 = *(int *)(var_2 + 0x14);
  *copy_into_self = false;
  var_3 = x->rename_errno;
  if (x->move_mode != false) {
    if (-1 < var_3) {
LAB_00015e6f:
      local_1f4 = (char *)var_1(local_1f4._1_3_,var_3 == 0);
      if (var_4 != (type_1 *)0x0) {
        *var_4 = var_3 == 0;
      }
      goto LAB_00015e8b;
    }
    local_1f4 = (char *)var_1(local_1f4._1_3_,x->move_mode);
    var_3 = var_5(-100,src_name,-100,dst_name,1);
    if (var_3 != 0) {
      piVar21 = var_6();
      var_3 = *piVar21;
      goto LAB_00015e6f;
    }
    if (var_4 != (type_1 *)0x0) {
      *var_4 = true;
    }
LAB_000161c0:
    if (local_1f0->last_file != false) {
      var_3 = 0;
      goto LAB_00015ef0;
    }
    var_3 = 0;
    var_30 = local_1f8;
    if (local_1f0->dereference == var_7) goto LAB_000161e8;
LAB_00015eb2:
    var_9 = var_8(3,var_30,(type_15 *)&src_sb);
    if (var_9 == 0) goto LAB_00015ed4;
LAB_0001620a:
    var_11 = (type_5 *)&stack0xfffffd68;
LAB_0001620e:
    var_11[-1] = 4;
    var_11[-2] = 0x16215;
    var_30 = var_10(var_11[-1],(char *)*var_11);
    puVar38 = var_11 + 1;
    var_11[1] = 5;
    var_70 = (type_16 **)((int)var_70 + -0xb193);
LAB_00016222:
    *(type_16 ***)((int)puVar38 + -4) = var_70;
    *(type_5 *)((int)puVar38 + -8) = 0;
    *(type_5 *)((int)puVar38 + -0xc) = 0x1622a;
    uVar19 = var_12();
    *(type_5 *)((int)puVar38 + -0xc) = 0x16231;
    piVar21 = var_6();
    *(char **)((int)puVar38 + -0xc) = var_30;
    *(type_5 *)((int)puVar38 + -0x10) = uVar19;
    *(int *)((int)puVar38 + -0x14) = *piVar21;
    *(type_5 *)((int)puVar38 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
    *(type_16 **)((int)puVar38 + -0x1c) = &UNK_0001623c;
    var_13();
  }
LAB_00015e8b:
  if (var_3 == 0) goto LAB_000161c0;
  if ((var_3 != 0x11) || (local_1f0->interactive != var_14)) {
    var_30 = local_200;
    if (local_1f0->dereference != var_7) goto LAB_00015eb2;
LAB_000161e8:
    var_9 = var_15(3,var_30,(type_15 *)&src_sb);
    if (var_9 != 0) goto LAB_0001620a;
LAB_00015ed4:
    var_17 = src_sb.st_mode;
    if (((src_sb.st_mode & 0xf000) == 0x4000) && (local_1f0->recursive == false)) {
      var_10(shell_escape_always_quoting_style,local_200);
      if (local_1f0->install_mode == false) {
        var_12();
      }
      else {
        var_12();
      }
                    /* WARNING: Subroutine does not return */
      var_13();
    }
  }
LAB_00015ef0:
  var_71 = var_50;
  var_72 = (type_17 *)var_50;
  puVar39 = var_50;
  if (((type_9)var_23 != '\0') && (var_16 = local_1f0->src_info, var_16 != (type_11 *)0x0)) {
    local_20c = &src_sb;
    if (((var_17 & 0xf000) != 0x4000) && (local_1f0->type_19 == var_18)) {
      var_83 = var_19(var_16,local_200,local_20c);
      if (var_83) {
        var_10(shell_escape_always_quoting_style,local_200);
        uVar19 = var_12();
                    /* WARNING: Subroutine does not return */
        var_13(0,0,uVar19);
      }
      var_16 = local_1f0->src_info;
    }
    var_20(var_16,local_200,local_20c);
  }
  local_20c = (type_2 *)0x1;
  if (local_1f0->dereference != var_21) {
    local_20c = (type_2 *)(local_1f0->dereference == var_22 & var_23);
  }
  if ((type_9)local_1f4 == '\0') {
    if ((var_3 != 0x11) || (local_1f0->interactive != var_14)) {
      var_24 = var_17 & 0xf000;
      if (var_24 == 0x8000) {
LAB_00016b80:
        var_9 = 0x100;
        var_66 = (type_2 *)var_1(var_66._1_3_,local_1f0->move_mode);
        if ((((local_1f0->move_mode == false) &&
             (var_66 = (type_2 *)var_1(var_66._1_3_,local_1f0->symbolic_link),
             local_1f0->symbolic_link == false)) &&
            (var_66 = (type_2 *)var_1(var_66._1_3_,local_1f0->hard_link),
            local_1f0->hard_link == false)) &&
           (var_66 = (type_2 *)var_1(var_66._1_3_,1), local_1f0->type_19 == var_18))
        {
          var_66 = (type_2 *)var_1(var_66._1_3_,local_1f0->unlink_dest_before_opening);
          var_9 = (type_10)(local_1f0->unlink_dest_before_opening != false) << 8;
        }
      }
      else {
        var_9 = 0x100;
        var_25 = (var_24 == 0xa000 || var_24 == 0x4000) | local_1f0->copy_as_regular ^ 1U;
        var_66 = (type_2 *)var_1(var_66._1_3_,var_25);
        if (var_25 == 0) goto LAB_00016b80;
      }
      var_9 = var_26(3,-100,local_1f8,(type_15 *)&dst_sb,var_9);
      if (var_9 == 0) {
        var_40 = (type_11 *)((type_10)var_40 & 0xffffff00);
      }
      else {
        piVar21 = var_6();
        if (*piVar21 == 0x28) {
          if (local_1f0->unlink_dest_after_failed_open == false) goto LAB_00017070;
          var_40 = (type_11 *)((type_10)var_40._1_3_ << 8);
        }
        else {
          var_40 = (type_11 *)var_1(var_40._1_3_,1);
          if (*piVar21 != 2) {
LAB_00017070:
            local_1f0 = (type_4 *)piVar21;
            var_10(shell_escape_always_quoting_style,local_1f8);
            uVar19 = var_12();
                    /* WARNING: Subroutine does not return */
            var_13(0,*(int *)local_1f0,uVar19);
          }
        }
        var_66 = (type_2 *)((type_10)var_66 & 0xffffff00);
        if (var_3 != 0x11) {
          uVar47 = var_40._0_1_;
          var_40 = (type_11 *)0x0;
          local_1f4 = (char *)var_1(local_1f4._1_3_,uVar47);
          puVar39 = var_50;
          goto LAB_00016259;
        }
      }
      if (local_1f0->interactive == var_14) goto LAB_00016048;
      if ((src_sb.st_ino._4_4_ == dst_sb.st_ino._4_4_ &&
           (char *)src_sb.st_ino == (char *)dst_sb.st_ino) &&
         (src_sb.st_dev._4_4_ == dst_sb.st_dev._4_4_ &&
          (type_2 *)src_sb.st_dev == (type_2 *)dst_sb.st_dev)) {
        var_28 = local_1f0->hard_link;
        if ((type_1)var_28 == false) {
          if (local_1f0->dereference == var_7) {
            var_52 = true;
            bVar6 = true;
            goto LAB_000175fc;
          }
          var_132 = (type_15 *)&tmp_dst_sb;
          var_3 = var_15(3,local_1f8,var_132);
          if (var_3 == 0) {
            local_240 = (type_15 *)&dst_back_sb;
            var_3 = var_15(3,local_200,local_240);
            if ((var_3 == 0) &&
               (((var_52 = (dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&
                           (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&
                           ((type_2 *)dst_back_sb.st_dev == (type_2 *)tmp_dst_sb.st_dev &&
                           dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_), psVar33 = local_240
                 , (dst_back_sb.st_mode & 0xf000) != 0xa000 ||
                 ((tmp_dst_sb.st_mode & 0xf000) != 0xa000)) ||
                (local_1f0->unlink_dest_before_opening == false)))) goto LAB_0001761e;
          }
LAB_000181e8:
          local_1f4 = (char *)((type_10)local_1f4 & 0xffffff00);
          goto LAB_00016048;
        }
LAB_00018440:
        local_1f4 = (char *)var_1(local_1f4._1_3_,var_28);
        goto LAB_00016048;
      }
      if (local_1f0->dereference != var_7) goto LAB_00016048;
      var_52 = false;
      bVar6 = false;
LAB_000175fc:
      var_132 = (type_15 *)&dst_sb;
      psVar33 = (type_15 *)&src_sb;
      if (((src_sb.st_mode & 0xf000) != 0xa000) || ((dst_sb.st_mode & 0xf000) != 0xa000)) {
LAB_0001761e:
        if (local_1f0->type_19 != var_18) {
          if (var_52) {
            var_83 = var_27(local_200,local_1f8);
            var_25 = !var_83;
            var_28 = false;
            goto LAB_00018431;
          }
          if ((((local_1f0->move_mode != false) || (local_1f0->dereference == var_7)) ||
              ((psVar33->st_mode & 0xf000) != 0xa000)) || ((var_132->st_mode & 0xf000) == 0xa000))
          goto LAB_000181e8;
          goto LAB_00017680;
        }
        var_28 = local_1f0->move_mode;
        if (((type_1)var_28 == false) && (local_1f0->unlink_dest_before_opening == false)) {
          if ((psVar33->st_mode & 0xf000) != 0xa000) {
LAB_0001847d:
            var_90 = (type_15 *)var_132->st_mode;
            if (((type_10)var_132->st_mode & 0xf000) == 0xa000) {
LAB_0001849c:
              var_28 = local_1f0->move_mode;
            }
            else {
LAB_000187a8:
              if ((*(int *)((int)&psVar33->st_ino + 4) != *(int *)((int)&var_132->st_ino + 4) ||
                   (int)psVar33->st_ino != (int)var_132->st_ino) ||
                 (*(char **)((int)&psVar33->st_dev + 4) != *(char **)((int)&var_132->st_dev + 4)
                  || *(char **)&psVar33->st_dev != *(char **)&var_132->st_dev)) goto LAB_00016048;
              var_28 = local_1f0->hard_link;
              if ((type_1)var_28 != false) goto LAB_00018440;
              var_28 = local_1f0->move_mode;
            }
            goto LAB_000184a6;
          }
        }
        else {
          var_90 = (type_15 *)var_132->st_mode;
          if (((type_10)var_132->st_mode & 0xf000) == 0xa000) goto LAB_00016048;
          if ((var_52) && (1 < var_132->st_nlink)) {
            var_90 = psVar33;
            var_28 = var_27(local_200,local_1f8);
            if ((bool)var_28) {
              psVar33 = var_90;
              if ((var_90->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;
              goto LAB_0001849c;
            }
            local_1f4 = (char *)var_1(local_1f4._1_3_,local_1f0->move_mode);
            var_25 = local_1f0->move_mode ^ 1;
            goto LAB_00018431;
          }
          if ((psVar33->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;
LAB_000184a6:
          if ((((var_28 != '\0') && ((src_sb.st_mode & 0xf000) == 0xa000)) &&
              (1 < var_132->st_nlink)) &&
             (var_90 = psVar33, var_30 = var_29(local_200), psVar33 = var_90,
             var_30 != (char *)0x0)) {
            var_83 = var_27(var_30,local_1f8);
            var_25 = !var_83;
            var_31(var_30);
            var_28 = false;
            goto LAB_00018431;
          }
        }
        if ((local_1f0->symbolic_link == false) ||
           (var_90 = (type_15 *)var_132->st_mode, ((type_10)var_132->st_mode & 0xf000) != 0xa000)
           ) {
          if (local_1f0->dereference != var_7) goto LAB_00017680;
          if ((psVar33->st_mode & 0xf000) == 0xa000) {
            var_3 = var_8(3,local_200,(type_15 *)&dst_back_sb);
            if (var_3 != 0) goto LAB_00016048;
          }
          else {
            psVar20 = &dst_back_sb;
            for (var_3 = 0x18; var_3 != 0; var_3 = var_3 + -1) {
              *(char **)&psVar20->st_dev = *(char **)&psVar33->st_dev;
              psVar33 = (type_15 *)((int)psVar33 + (type_10)var_144 * -8 + 4);
              psVar20 = (type_2 *)((int)psVar20 + (type_10)var_144 * -8 + 4);
            }
          }
          var_90 = (type_15 *)var_132->st_mode;
          if (((type_10)var_132->st_mode & 0xf000) == 0xa000) {
            var_3 = var_8(3,local_1f8,(type_15 *)&tmp_dst_sb);
            if (var_3 != 0) goto LAB_00016048;
          }
          else {
            psVar33 = var_132;
            psVar20 = &tmp_dst_sb;
            for (var_3 = 0x18; var_3 != 0; var_3 = var_3 + -1) {
              *(int *)&psVar20->st_dev = (int)psVar33->st_dev;
              psVar33 = (type_15 *)((int)psVar33 + (type_10)var_144 * -8 + 4);
              psVar20 = (type_2 *)((int)psVar20 + (type_10)var_144 * -8 + 4);
            }
          }
          if ((dst_back_sb.st_ino._4_4_ == tmp_dst_sb.st_ino._4_4_ &&
               (char *)dst_back_sb.st_ino == (char *)tmp_dst_sb.st_ino) &&
             (dst_back_sb.st_dev._4_4_ == tmp_dst_sb.st_dev._4_4_ &&
              (type_2 *)dst_back_sb.st_dev == (type_2 *)tmp_dst_sb.st_dev)) {
            if (local_1f0->hard_link == false) goto LAB_00017680;
            local_1f4 = (char *)var_1(local_1f4._1_3_,(var_132->st_mode & 0xf000) != 0xa000);
          }
        }
        goto LAB_00016048;
      }
      var_83 = var_27(local_200,local_1f8);
      if (!var_83) {
        if ((local_1f0->type_19 != var_18) || (!bVar6)) goto LAB_000181e8;
        local_1f4 = (char *)var_1(local_1f4._1_3_,local_1f0->move_mode);
        var_28 = true;
        var_25 = local_1f0->move_mode ^ 1;
LAB_00018431:
        if (var_25 != 0) goto LAB_00018440;
      }
LAB_00017680:
      var_32(1,shell_escape_always_quoting_style,local_1f8);
      var_32(0,shell_escape_always_quoting_style,local_200);
LAB_000176b3:
      uVar19 = var_12();
      goto LAB_000176c0;
    }
    var_40 = (type_11 *)((type_10)var_40 & 0xffffff00);
    var_66 = (type_2 *)((type_10)var_66._1_3_ << 8);
LAB_00016048:
    if (local_1f0->update == false) {
      if (local_1f0->move_mode != false) goto LAB_00017420;
      if ((var_17 & 0xf000) != 0x4000) {
LAB_00016ca2:
        puVar39 = var_50;
        if ((local_1f0->interactive == var_14) ||
           ((local_1f0->interactive == var_33 &&
            (var_83 = var_34(local_1f0,local_1f8,(type_2 *)&dst_sb.st_mode),
            puVar39 = var_50, !var_83)))) goto LAB_00016570;
      }
LAB_00016cbd:
      puVar39 = var_50;
      if ((type_9)local_1f4 == '\0') {
        var_24 = var_17 & 0xf000;
        if ((dst_sb.st_mode & 0xf000) != 0x4000) {
          if (var_24 == 0x4000) {
            if ((local_1f0->move_mode == false) ||
               (var_35 = local_1f0->type_19, var_35 == var_18)) {
              var_32(1,shell_escape_always_quoting_style,local_200);
              var_32(0,shell_escape_always_quoting_style,local_1f8);
              goto LAB_000176b3;
            }
            if ((type_9)var_23 != '\0') goto LAB_00016d0d;
            goto LAB_00017827;
          }
          var_35 = local_1f0->type_19;
          var_38 = var_35;
          if ((type_9)var_23 == '\0') goto LAB_00016d69;
LAB_00016d0d:
          if (var_35 != var_36) {
            var_83 = var_19(local_1f0->dest_info,local_1f8,&dst_sb);
            if (var_83) {
              var_32(1,shell_escape_always_quoting_style,local_200);
              var_32(0,shell_escape_always_quoting_style,local_1f8);
              goto LAB_000176b3;
            }
            if ((var_24 != 0x4000) && ((dst_sb.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;
            goto LAB_00016d61;
          }
          var_35 = var_36;
          var_38 = var_36;
          if (local_1f0->move_mode != false) goto LAB_00017827;
LAB_00018700:
          var_30 = var_37(local_200);
          if (*var_30 == '.') {
            var_52 = false;
LAB_00018ca5:
            if ((var_30[(var_30[1] == '.') + 1] == '\0') ||
               (var_30[(var_30[1] == '.') + 1] == '/')) goto LAB_00016d83;
            if (var_52) goto LAB_0001785b;
          }
          if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;
LAB_0001785b:
          if (var_38 != var_36) {
            var_40 = (type_11 *)var_39(var_30);
            var_132 = (type_15 *)var_37(local_1f8);
            var_42 = var_39((char *)var_132);
            var_90 = (type_15 *)&simple_backup_suffix;
            local_1f4 = simple_backup_suffix;
            var_41 = var_39(simple_backup_suffix);
            if (((var_40 == (type_11 *)(var_41 + var_42)) &&
                (var_3 = var_43(var_30,var_132,var_42), var_3 == 0)) &&
               (var_3 = var_44(var_30 + var_42,local_1f4), var_3 == 0)) {
              var_42 = var_39(local_1f8);
              var_30 = (char *)var_45(var_41 + 1 + var_42);
              local_1f4 = *(char **)&var_90->st_dev;
              var_154 = (char *)var_46(var_30,local_1f8,var_42);
              var_47(var_154,local_1f4);
              var_3 = var_8(3,var_30,(type_15 *)&dst_back_sb);
              var_31(var_30);
              if (((var_3 == 0) &&
                  (src_sb.st_ino._4_4_ == dst_back_sb.st_ino._4_4_ &&
                   (char *)src_sb.st_ino == (char *)dst_back_sb.st_ino)) &&
                 ((src_sb.st_dev._4_4_ == dst_back_sb.st_dev._4_4_ &&
                  ((type_2 *)src_sb.st_dev == (type_2 *)dst_back_sb.st_dev)))) {
                uVar19 = var_12();
                var_32(1,shell_escape_always_quoting_style,local_200);
                var_32(0,shell_escape_always_quoting_style,local_1f8);
LAB_000176c0:
                    /* WARNING: Subroutine does not return */
                var_13(0,0,uVar19);
              }
            }
          }
          var_16 = (type_11 *)var_48(local_1f8,local_1f0->type_19);
          var_40 = var_16;
          if (var_16 == (type_11 *)0x0) {
            piVar21 = var_6();
            var_3 = 0x11;
            local_1f4 = (char *)var_1(local_1f4._1_3_,1);
            puVar39 = var_50;
            if (*piVar21 != 2) {
              var_10(shell_escape_always_quoting_style,local_1f8);
              uVar19 = var_12();
                    /* WARNING: Subroutine does not return */
              var_13(0,*piVar21,uVar19);
            }
          }
          else {
            var_42 = var_39((char *)var_16);
            var_9 = -(var_42 + 0x1c & 0xfffffff0);
            *(size_t *)(&stack0xfffffd6c + var_9) = var_42 + 1;
            *(type_11 **)(&stack0xfffffd68 + var_9) = var_16;
            *(int *)(&stack0xfffffd64 + var_9) = (int)&local_280 + var_9;
            *(type_5 *)(&stack0xfffffd60 + var_9) = 0x179e2;
            pHVar25 = (type_11 *)
                      var_49(*(void **)(&stack0xfffffd64 + var_9),
                             *(void **)(&stack0xfffffd68 + var_9),
                             *(size_t *)(&stack0xfffffd6c + var_9));
            *(type_11 **)(&stack0xfffffd64 + var_9) = var_16;
            var_3 = 0x11;
            *(type_5 *)(&stack0xfffffd60 + var_9) = 0x179f1;
            var_31(*(void **)(&stack0xfffffd64 + var_9));
            var_40 = pHVar25;
            local_1f4 = (char *)var_1(local_1f4._1_3_,1);
            puVar39 = var_50 + var_9;
          }
          goto LAB_00016259;
        }
        if (var_24 != 0x4000) {
LAB_0001828c:
          if ((local_1f0->move_mode == false) ||
             (var_35 = local_1f0->type_19, var_35 == var_18)) {
            var_10(shell_escape_always_quoting_style,local_1f8);
            uVar19 = var_12();
                    /* WARNING: Subroutine does not return */
            var_13(0,0,uVar19);
          }
LAB_00017827:
          var_38 = var_35;
          if ((src_sb.st_mode & 0xf000) == 0x4000) {
LAB_0001892a:
            if ((dst_sb.st_mode & 0xf000) == 0x4000) goto LAB_00018756;
            if (var_38 == var_18) {
              var_51(0,shell_escape_quoting_style,local_1f8);
              var_51(0,shell_escape_quoting_style,local_200);
              goto LAB_000176b3;
            }
          }
LAB_0001783f:
          var_30 = var_37(local_200);
          if (*var_30 == '.') {
            var_52 = true;
            goto LAB_00018ca5;
          }
          goto LAB_0001785b;
        }
LAB_00016d61:
        var_38 = local_1f0->type_19;
LAB_00016d69:
        if (local_1f0->move_mode != false) {
          if ((src_sb.st_mode & 0xf000) == 0x4000) goto LAB_0001892a;
LAB_00018756:
          if (var_38 != var_18) goto LAB_0001783f;
LAB_00016da2:
          uVar47 = var_40._0_1_;
          var_3 = 0x11;
          var_40 = (type_11 *)0x0;
          local_1f4 = (char *)var_1(local_1f4._1_3_,uVar47);
          puVar39 = var_50;
          goto LAB_00016259;
        }
        var_52 = false;
        if (var_38 != var_18) goto LAB_00018700;
LAB_00016d83:
        if (((dst_sb.st_mode & 0xf000) == 0x4000 || var_52) ||
           (((local_1f0->unlink_dest_before_opening == false &&
             ((local_1f0->preserve_links == false || (dst_sb.st_nlink < 2)))) &&
            ((local_1f0->dereference != var_7 || ((src_sb.st_mode & 0xf000) == 0x8000))))))
        goto LAB_00016da2;
        var_3 = var_53(local_1f8);
        if ((var_3 != 0) && (piVar21 = var_6(), *piVar21 != 2)) {
          local_1f0 = (type_4 *)piVar21;
          var_10(shell_escape_always_quoting_style,local_1f8);
          uVar19 = var_12();
                    /* WARNING: Subroutine does not return */
          var_13(0,*(int *)local_1f0,uVar19);
        }
        local_1f4 = (char *)var_1(local_1f4._1_3_,local_1f0->verbose);
        if (local_1f0->verbose != false) {
          var_3 = 0x11;
          var_10(shell_escape_always_quoting_style,local_1f8);
          var_12();
          var_54();
          var_40 = (type_11 *)0x0;
          puVar39 = var_50;
          goto LAB_00016259;
        }
        if ((type_9)var_23 != '\0') {
          var_3 = 0x11;
          var_40 = local_1f0->dest_info;
          local_1f4 = (char *)var_1(local_1f4._1_3_,(type_9)var_23);
          if (local_1f0->dest_info == (type_11 *)0x0) goto LAB_00016356;
          var_40 = (type_11 *)0x0;
          var_3 = 0x11;
          goto LAB_00016277;
        }
        var_3 = 0x11;
        local_1f4 = (char *)var_1(local_1f4._1_3_,1);
        var_40 = (type_11 *)0x0;
        var_72 = (type_17 *)var_50;
        goto LAB_00016356;
      }
LAB_00016570:
      var_72 = (type_17 *)puVar39;
      var_25 = 1;
      goto LAB_0001614a;
    }
    if ((var_17 & 0xf000) == 0x4000) {
      if (local_1f0->move_mode == false) goto LAB_00016cbd;
LAB_00017420:
      var_55 = local_1f0->interactive;
      if ((var_55 != var_14) &&
         (((var_55 != var_33 &&
           (((var_55 != var_56 || (local_1f0->stdin_tty == false)) ||
            (var_83 = var_57(local_1f8,dst_sb.st_mode), var_83)))) ||
          (var_83 = var_34(local_1f0,local_1f8,(type_2 *)&dst_sb.st_mode), var_83))))
      goto LAB_00016cbd;
      puVar39 = var_50;
      if (var_4 != (type_1 *)0x0) {
        *var_4 = true;
        puVar39 = var_50;
      }
      goto LAB_00016570;
    }
    var_24 = 0;
    if ((local_1f0->preserve_timestamps != false) && (var_24 = 1, local_1f0->move_mode != false)) {
      var_24 = (type_10)((type_2 *)dst_sb.st_dev != (type_2 *)src_sb.st_dev ||
                     dst_sb.st_dev._4_4_ != src_sb.st_dev._4_4_);
    }
    var_3 = var_58(local_1f8,&dst_sb,&src_sb,var_24);
    if (var_3 < 0) {
      if (local_1f0->move_mode == false) goto LAB_00016ca2;
      goto LAB_00017420;
    }
    if (var_4 != (type_1 *)0x0) {
      *var_4 = true;
    }
    var_30 = var_59(local_1f8,var_60(src_sb.st_ino._4_4_,(char *)src_sb.st_ino),
                              var_60(src_sb.st_dev._4_4_,(type_2 *)src_sb.st_dev));
    puVar39 = var_50;
    if ((var_30 == (char *)0x0) ||
       (var_83 = var_61(var_30,local_1f8,true,local_1f0->verbose,var_62(local_20c,0)),
       puVar39 = var_50, var_83)) goto LAB_00016570;
    var_72 = (type_17 *)var_50;
    if (local_1f0->preserve_security_context != false) {
      var_63();
      var_72 = (type_17 *)var_50;
    }
    goto LAB_00016148;
  }
  var_66 = (type_2 *)((type_10)var_66._1_3_ << 8);
  var_40 = (type_11 *)0x0;
LAB_00016259:
  var_71 = puVar39;
  if (((type_9)var_23 == '\0') || (local_1f0->dest_info == (type_11 *)0x0)) {
LAB_00016338:
    var_72 = (type_17 *)var_71;
    if ((local_1f0->verbose != false) && (local_1f0->move_mode == false)) {
LAB_00016b18:
      var_154 = local_1f8;
      var_30 = local_200;
      var_16 = var_40;
      if ((var_17 & 0xf000) != 0x4000) {
        *(type_5 *)((int)var_72 + -4) = 0x16b45;
        var_64(var_30,var_154,(char *)var_16);
      }
    }
    if (var_3 == 0) {
      if (local_1f0->move_mode != false) goto LAB_00016524;
      goto LAB_000165a0;
    }
LAB_00016356:
    var_24 = src_sb.st_ino._4_4_;
    var_30 = (char *)src_sb.st_ino;
    if ((local_1f0->recursive != false) && ((var_17 & 0xf000) == 0x4000)) {
      var_66 = (type_2 *)src_sb.st_dev;
      local_210 = src_sb.st_dev._4_4_;
      if ((type_9)var_23 == '\0') {
        *(type_8 *)((int)var_72 + -4) = src_sb.st_dev._4_4_;
        *(type_2 **)((int)var_72 + -8) = var_66;
        *(type_10 *)((int)var_72 + -0xc) = var_24;
        *(char **)((int)var_72 + -0x10) = var_30;
        *(type_5 *)((int)var_72 + -0x14) = 0x163c0;
        var_66 = (type_2 *)var_65(*(type_24 *)((int)var_72 + -0x10),
                                               *(type_25 *)((int)var_72 + -8));
      }
      else {
        *(type_8 *)((int)var_72 + -0x10) = src_sb.st_dev._4_4_;
        *(type_2 **)((int)var_72 + -0x14) = var_66;
        *(type_10 *)((int)var_72 + -0x18) = var_24;
        *(char **)((int)var_72 + -0x1c) = var_30;
        *(char **)((int)var_72 + -0x20) = local_1f8;
        *(type_5 *)((int)var_72 + -0x24) = 0x176f4;
        var_66 = (type_2 *)var_59(*(char **)((int)var_72 + -0x20),
                                            *(type_24 *)((int)var_72 + -0x1c),
                                            *(type_25 *)((int)var_72 + -0x14));
      }
      if (var_66 != (type_2 *)0x0) {
LAB_000163d3:
        *(type_2 **)((int)var_72 + -0xc) = var_66;
        *(char **)((int)var_72 + -0x10) = local_200;
        *(type_5 *)((int)var_72 + -0x14) = 0x163e7;
        var_83 = var_27(*(char **)((int)var_72 + -0x10),*(char **)((int)var_72 + -0xc));
        if (var_83) {
          *(char **)((int)var_72 + -8) = top_level_dst_name;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 1;
          *(type_5 *)((int)var_72 + -0x14) = 0x18b02;
          var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(char **)((int)var_72 + -8) = top_level_src_name;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x18b16;
          var_154 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(type_5 *)((int)var_72 + -8) = 5;
          *(char **)((int)var_72 + -0xc) = "cannot copy a directory, %s, into itself, %s";
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x18b2b;
          uVar19 = var_12();
          *(char **)((int)var_72 + -0x10) = var_30;
          *(char **)((int)var_72 + -0x14) = var_154;
          *(type_5 *)((int)var_72 + -0x18) = uVar19;
          *(type_5 *)((int)var_72 + -0x1c) = 0;
          *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(type_16 **)((int)var_72 + -0x24) = &UNK_00018b39;
          var_13();
        }
        *(type_2 **)((int)var_72 + -0xc) = var_66;
        *(char **)((int)var_72 + -0x10) = local_1f8;
        *(type_5 *)((int)var_72 + -0x14) = 0x16406;
        var_83 = var_27(*(char **)((int)var_72 + -0x10),*(char **)((int)var_72 + -0xc));
        if (var_83) {
          *(char **)((int)var_72 + -0xc) = top_level_src_name;
          *(type_5 *)((int)var_72 + -0x10) = 4;
          *(type_5 *)((int)var_72 + -0x14) = 0x18eee;
          var_30 = var_10(*(type_26 *)((int)var_72 + -0x10),
                                   *(char **)((int)var_72 + -0xc));
          *(type_5 *)((int)var_72 + -8) = 5;
          *(char **)((int)var_72 + -0xc) = "warning: source directory %s specified more than once";
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x18f03;
          uVar19 = var_12();
          *(char **)((int)var_72 + -0x14) = var_30;
          *(type_5 *)((int)var_72 + -0x18) = uVar19;
          *(type_5 *)((int)var_72 + -0x1c) = 0;
          *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(type_16 **)((int)var_72 + -0x24) = &UNK_00018f0e;
          var_13();
        }
        if ((local_1f0->dereference != var_21) &&
           ((local_1f0->dereference != var_22 || ((type_9)var_23 == '\0'))))
        {
          *(type_2 **)((int)var_72 + -8) = var_66;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 1;
          *(type_5 *)((int)var_72 + -0x14) = 0x18d3f;
          var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(char **)((int)var_72 + -8) = local_1f8;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x18d53;
          var_154 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(type_5 *)((int)var_72 + -8) = 5;
          *(char **)((int)var_72 + -0xc) = "will not create hard link %s to directory %s";
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x18d68;
          uVar19 = var_12();
          *(char **)((int)var_72 + -0x10) = var_30;
          *(char **)((int)var_72 + -0x14) = var_154;
          *(type_5 *)((int)var_72 + -0x18) = uVar19;
          *(type_5 *)((int)var_72 + -0x1c) = 0;
          *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(type_16 **)((int)var_72 + -0x24) = &UNK_00018d76;
          var_13();
        }
      }
LAB_00016438:
      var_28 = local_1f0->move_mode;
LAB_00016afb:
      if (var_28 == '\0') {
LAB_00016b03:
        var_4 = (type_1 *)((type_10)local_1f4 & 0xff);
      }
      else {
LAB_00016495:
        if (var_3 == 0x11) {
          *(char **)((int)var_72 + -0xc) = local_1f8;
          *(char **)((int)var_72 + -0x10) = local_200;
          *(type_5 *)((int)var_72 + -0x14) = 0x174bc;
          var_3 = var_67(*(char **)((int)var_72 + -0x10),*(char **)((int)var_72 + -0xc));
          if (var_3 != 0) {
            *(type_5 *)((int)var_72 + -4) = 0x174cc;
            piVar21 = var_6();
            var_3 = *piVar21;
            if (var_3 != 0) goto LAB_0001649e;
          }
LAB_00016524:
          if (local_1f0->verbose != false) {
            *(type_5 *)((int)var_72 + -8) = 5;
            *(char **)((int)var_72 + -0xc) = "renamed ";
            *(type_5 *)((int)var_72 + -0x10) = 0;
            *(type_5 *)((int)var_72 + -0x14) = 0x18223;
            uVar19 = var_12();
            *(type_5 *)((int)var_72 + -0xc) = uVar19;
            *(type_5 *)((int)var_72 + -0x10) = 1;
            *(type_5 *)((int)var_72 + -0x14) = 0x1822d;
            var_54();
            var_154 = local_1f8;
            var_30 = local_200;
            var_16 = var_40;
            *(type_5 *)((int)var_72 + -0x14) = 0x18244;
            var_64(var_30,var_154,(char *)var_16);
          }
          if (local_1f0->set_security_context != false) {
            *(type_4 **)((int)var_72 + -4) = local_1f0;
            *(type_5 *)((int)var_72 + -8) = 1;
            *(type_5 *)((int)var_72 + -0xc) = 0;
            *(char **)((int)var_72 + -0x10) = local_1f8;
            *(type_5 *)((int)var_72 + -0x14) = 0x18208;
            var_68
                      (*(char **)((int)var_72 + -0x10),*(type_1 *)((int)var_72 + -0xc),
                       *(type_1 *)((int)var_72 + -8),*(type_4 **)((int)var_72 + -4));
          }
          if (var_4 != (type_1 *)0x0) {
            *var_4 = true;
          }
          puVar39 = (type_18 *)var_72;
          if (((type_9)var_23 != '\0') && (local_1f0->last_file == false)) {
            *(type_2 **)((int)var_72 + -8) = &src_sb;
            var_141 = local_1f0;
            *(char **)((int)var_72 + -0xc) = local_1f8;
            *(type_11 **)((int)var_72 + -0x10) = var_141->dest_info;
            *(type_5 *)((int)var_72 + -0x14) = 0x17ab6;
            var_20(*(type_11 **)((int)var_72 + -0x10),*(char **)((int)var_72 + -0xc),
                        *(type_2 **)((int)var_72 + -8));
            var_25 = (type_9)var_23;
            goto LAB_0001614a;
          }
          goto LAB_00016570;
        }
LAB_0001649e:
        if (var_3 == 0x16) {
          *(char **)((int)var_72 + -8) = top_level_dst_name;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 1;
          *(type_5 *)((int)var_72 + -0x14) = 0x185ca;
          var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(char **)((int)var_72 + -8) = top_level_src_name;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x185de;
          var_154 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(type_5 *)((int)var_72 + -8) = 5;
          *(char **)((int)var_72 + -0xc) = "cannot move %s to a subdirectory of itself, %s";
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x185f3;
          uVar19 = var_12();
          *(char **)((int)var_72 + -0x10) = var_30;
          *(char **)((int)var_72 + -0x14) = var_154;
          *(type_5 *)((int)var_72 + -0x18) = uVar19;
          *(type_5 *)((int)var_72 + -0x1c) = 0;
          *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(type_16 **)((int)var_72 + -0x24) = &UNK_00018606;
          var_13();
        }
        if (var_3 != 0x12) {
          *(char **)((int)var_72 + -8) = local_1f8;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 1;
          *(type_5 *)((int)var_72 + -0x14) = 0x180a2;
          var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(char **)((int)var_72 + -8) = local_200;
          *(type_5 *)((int)var_72 + -0xc) = 4;
          *(type_5 *)((int)var_72 + -0x10) = 0;
          local_1f0 = (type_4 *)var_30;
          *(type_5 *)((int)var_72 + -0x14) = 0x180ba;
          var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                     *(type_26 *)((int)var_72 + -0xc),
                                     *(char **)((int)var_72 + -8));
          *(type_5 *)((int)var_72 + -8) = 5;
          *(char **)((int)var_72 + -0xc) = "cannot move %s to %s";
          *(type_5 *)((int)var_72 + -0x10) = 0;
          *(type_5 *)((int)var_72 + -0x14) = 0x180cf;
          uVar19 = var_12();
          *(type_4 **)((int)var_72 + -0x10) = local_1f0;
          *(char **)((int)var_72 + -0x14) = var_30;
          *(type_5 *)((int)var_72 + -0x18) = uVar19;
          *(int *)((int)var_72 + -0x1c) = var_3;
          goto LAB_00017594;
        }
        var_24 = var_17 & 0xf000;
        if (var_24 == 0x4000) {
          *(char **)((int)var_72 + -0x10) = local_1f8;
          *(type_5 *)((int)var_72 + -0x14) = 0x1825e;
          var_3 = var_69(*(char **)((int)var_72 + -0x10));
          if (var_3 != 0) {
            *(type_5 *)((int)var_72 + -4) = 0x1826e;
            piVar21 = var_6();
            if (*piVar21 != 2) goto LAB_00017548;
          }
        }
        else {
          *(char **)((int)var_72 + -0x10) = local_1f8;
          *(type_5 *)((int)var_72 + -0x14) = 0x164d6;
          var_3 = var_53(*(char **)((int)var_72 + -0x10));
          if (var_3 != 0) {
            *(type_5 *)((int)var_72 + -4) = 0x1753d;
            piVar21 = var_6();
            if (*piVar21 != 2) {
LAB_00017548:
              *(char **)((int)var_72 + -8) = local_1f8;
              *(type_5 *)((int)var_72 + -0xc) = 4;
              *(type_5 *)((int)var_72 + -0x10) = 1;
              *(type_5 *)((int)var_72 + -0x14) = 0x1755a;
              var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                         *(type_26 *)((int)var_72 + -0xc),
                                         *(char **)((int)var_72 + -8));
              *(char **)((int)var_72 + -8) = local_200;
              *(type_5 *)((int)var_72 + -0xc) = 4;
              *(type_5 *)((int)var_72 + -0x10) = 0;
              local_1f0 = (type_4 *)var_30;
              *(type_5 *)((int)var_72 + -0x14) = 0x17572;
              var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                         *(type_26 *)((int)var_72 + -0xc),
                                         *(char **)((int)var_72 + -8));
              *(type_5 *)((int)var_72 + -8) = 5;
              *(char **)((int)var_72 + -0xc) =
                   "inter-device move failed: %s to %s; unable to remove target";
              *(type_5 *)((int)var_72 + -0x10) = 0;
              *(type_5 *)((int)var_72 + -0x14) = 0x17587;
              uVar19 = var_12();
              *(type_4 **)((int)var_72 + -0x10) = local_1f0;
              *(char **)((int)var_72 + -0x14) = var_30;
              *(type_5 *)((int)var_72 + -0x18) = uVar19;
              *(int *)((int)var_72 + -0x1c) = *piVar21;
LAB_00017594:
              *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(type_16 **)((int)var_72 + -0x24) = &UNK_0001759b;
              var_13();
            }
          }
          var_25 = var_24 != 0x4000 & local_1f0->verbose;
          local_1f4 = (char *)var_1(local_1f4._1_3_,var_25);
          if (var_25 != 0) {
            *(type_5 *)((int)var_72 + -8) = 5;
            *(char **)((int)var_72 + -0xc) = "copied ";
            *(type_5 *)((int)var_72 + -0x10) = 0;
            *(type_5 *)((int)var_72 + -0x14) = 0x17a23;
            uVar19 = var_12();
            *(type_5 *)((int)var_72 + -0xc) = uVar19;
            *(type_5 *)((int)var_72 + -0x10) = 1;
            *(type_5 *)((int)var_72 + -0x14) = 0x17a2d;
            var_54();
            var_154 = local_1f8;
            var_30 = local_200;
            var_16 = var_40;
            *(type_5 *)((int)var_72 + -0x14) = 0x17a44;
            var_64(var_30,var_154,(char *)var_16);
            var_4 = (type_1 *)0x1;
            goto LAB_000165b7;
          }
        }
        var_4 = (type_1 *)0x1;
        local_1f4 = (char *)var_1(local_1f4._1_3_,1);
      }
      goto LAB_000165b7;
    }
    var_28 = local_1f0->move_mode;
    if ((type_1)var_28 == false) {
      if (local_1f0->preserve_links == false) goto LAB_000165a0;
      if (local_1f0->hard_link == false) goto LAB_00016ac0;
      var_66 = (type_2 *)0x0;
      goto LAB_00016b03;
    }
    if (src_sb.st_nlink != 1) {
      if ((local_1f0->preserve_links != false) && (local_1f0->hard_link == false)) {
LAB_00016ac0:
        if ((1 < src_sb.st_nlink) ||
           ((((type_9)var_23 != '\0' && (local_1f0->dereference == var_22))
            || (var_66 = (type_2 *)0x0, local_1f0->dereference == var_21)))) {
          *(type_8 *)((int)var_72 + -0x10) = src_sb.st_dev._4_4_;
          *(type_2 **)((int)var_72 + -0x14) = (type_2 *)src_sb.st_dev;
          *(type_10 *)((int)var_72 + -0x18) = src_sb.st_ino._4_4_;
          *(char **)((int)var_72 + -0x1c) = (char *)src_sb.st_ino;
          *(char **)((int)var_72 + -0x20) = local_1f8;
          *(type_5 *)((int)var_72 + -0x24) = 0x1772e;
          var_66 = (type_2 *)var_59(*(char **)((int)var_72 + -0x20),
                                              *(type_24 *)((int)var_72 + -0x1c),
                                              *(type_25 *)((int)var_72 + -0x14));
          goto LAB_00017737;
        }
        goto LAB_00016afb;
      }
      var_66 = (type_2 *)0x0;
      goto LAB_00016495;
    }
    *(type_8 *)((int)var_72 + -4) = src_sb.st_dev._4_4_;
    *(type_2 **)((int)var_72 + -8) = (type_2 *)src_sb.st_dev;
    *(type_10 *)((int)var_72 + -0xc) = src_sb.st_ino._4_4_;
    *(char **)((int)var_72 + -0x10) = (char *)src_sb.st_ino;
    *(type_5 *)((int)var_72 + -0x14) = 0x1834d;
    var_66 = (type_2 *)var_65(*(type_24 *)((int)var_72 + -0x10),
                                           *(type_25 *)((int)var_72 + -8));
LAB_00017737:
    var_141 = local_1f0;
    if (var_66 == (type_2 *)0x0) goto LAB_00016438;
    if ((var_17 & 0xf000) == 0x4000) goto LAB_000163d3;
    *(type_2 **)((int)var_72 + -0xc) = local_20c;
    var_30 = local_1f8;
    *(type_10 *)((int)var_72 + -0x10) = (type_10)var_141->verbose;
    psVar20 = var_66;
    *(type_5 *)((int)var_72 + -0x14) = 0x17785;
    var_83 = var_61((char *)psVar20,var_30,true,*(type_1 *)((int)var_72 + -0x10),
                              *(type_1 *)((int)var_72 + -0xc));
    puVar39 = (type_18 *)var_72;
    if (var_83) goto LAB_00016570;
    if (local_1f0->preserve_security_context != false) goto LAB_000177a0;
LAB_00016fcb:
    var_16 = var_40;
    if (var_40 != (type_11 *)0x0) {
      *(char **)((int)var_72 + -0xc) = local_1f8;
      *(type_11 **)((int)var_72 + -0x10) = var_16;
      *(type_5 *)((int)var_72 + -0x14) = 0x16fe8;
      var_3 = var_67(*(char **)((int)var_72 + -0x10),*(char **)((int)var_72 + -0xc));
      if (var_3 != 0) {
        *(char **)((int)var_72 + -0xc) = local_1f8;
        *(type_5 *)((int)var_72 + -0x10) = 4;
        *(type_5 *)((int)var_72 + -0x14) = 0x182f0;
        var_30 = var_10(*(type_26 *)((int)var_72 + -0x10),
                                 *(char **)((int)var_72 + -0xc));
        puVar38 = (type_5 *)((int)var_72 + -8);
        *(type_5 *)((int)var_72 + -8) = 5;
        var_70 = var_70 + -0x2be3;
        goto LAB_00016222;
      }
      if (local_1f0->verbose != false) {
        *(char **)((int)var_72 + -8) = local_1f8;
        *(type_5 *)((int)var_72 + -0xc) = 4;
        *(type_5 *)((int)var_72 + -0x10) = 1;
        *(type_5 *)((int)var_72 + -0x14) = 0x17015;
        var_30 = var_32(*(int *)((int)var_72 + -0x10),
                                   *(type_26 *)((int)var_72 + -0xc),
                                   *(char **)((int)var_72 + -8));
        *(type_11 **)((int)var_72 + -8) = var_40;
        *(type_5 *)((int)var_72 + -0xc) = 4;
        *(type_5 *)((int)var_72 + -0x10) = 0;
        *(type_5 *)((int)var_72 + -0x14) = 0x17029;
        var_154 = var_32(*(int *)((int)var_72 + -0x10),
                                   *(type_26 *)((int)var_72 + -0xc),
                                   *(char **)((int)var_72 + -8));
        *(type_5 *)((int)var_72 + -8) = 5;
        *(type_16 ***)((int)var_72 + -0xc) = var_70 + -0x2bde;
        *(type_5 *)((int)var_72 + -0x10) = 0;
        *(type_5 *)((int)var_72 + -0x14) = 0x1703e;
        uVar19 = var_12();
        *(char **)((int)var_72 + -0x14) = var_30;
        *(char **)((int)var_72 + -0x18) = var_154;
        *(type_5 *)((int)var_72 + -0x1c) = uVar19;
        *(type_5 *)((int)var_72 + -0x20) = 1;
        *(type_5 *)((int)var_72 + -0x24) = 0x17048;
        var_54();
      }
    }
  }
  else {
LAB_00016277:
    if (local_1f0->move_mode != false) goto LAB_00016338;
    if (local_1f0->type_19 == var_18) {
      psVar20 = &dst_sb;
      if ((char)var_66 == '\0') {
        *(type_2 **)(var_71 + -8) = &dst_back_sb;
        *(char **)(var_71 + -0xc) = local_1f8;
        *(type_5 *)(var_71 + -0x10) = 3;
        var_66 = &dst_back_sb;
        *(type_5 *)(var_71 + -0x14) = 0x17a7d;
        var_9 = var_15(*(int *)(var_71 + -0x10),*(char **)(var_71 + -0xc),
                            *(type_15 **)(var_71 + -8));
        psVar20 = var_66;
        if (var_9 != 0) goto LAB_00016338;
      }
      var_141 = local_1f0;
      if ((psVar20->st_mode & 0xf000) == 0xa000) {
        *(type_2 **)(var_71 + -8) = psVar20;
        *(char **)(var_71 + -0xc) = local_1f8;
        *(type_11 **)(var_71 + -0x10) = var_141->dest_info;
        *(type_5 *)(var_71 + -0x14) = 0x162d3;
        var_83 = var_19(*(type_11 **)(var_71 + -0x10),*(char **)(var_71 + -0xc),
                           *(type_2 **)(var_71 + -8));
        if (var_83) {
          *(char **)(var_71 + -8) = local_1f8;
          *(type_5 *)(var_71 + -0xc) = 4;
          *(type_5 *)(var_71 + -0x10) = 1;
          *(type_5 *)(var_71 + -0x14) = 0x162ec;
          var_30 = var_32(*(int *)(var_71 + -0x10),*(type_26 *)(var_71 + -0xc),
                                     *(char **)(var_71 + -8));
          *(char **)(var_71 + -8) = local_200;
          *(type_5 *)(var_71 + -0xc) = 4;
          *(type_5 *)(var_71 + -0x10) = 0;
          *(type_5 *)(var_71 + -0x14) = 0x16300;
          local_1f0 = (type_4 *)
                      var_32(*(int *)(var_71 + -0x10),*(type_26 *)(var_71 + -0xc),
                                       *(char **)(var_71 + -8));
          *(type_5 *)(var_71 + -8) = 5;
          *(char **)(var_71 + -0xc) = "will not copy %s through just-created symlink %s";
          *(type_5 *)(var_71 + -0x10) = 0;
          *(type_5 *)(var_71 + -0x14) = 0x16319;
          uVar19 = var_12();
          var_141 = local_1f0;
          *(char **)(var_71 + -0x10) = var_30;
          *(type_4 **)(var_71 + -0x14) = var_141;
          *(type_5 *)(var_71 + -0x18) = uVar19;
          *(type_5 *)(var_71 + -0x1c) = 0;
          *(type_5 *)(var_71 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(type_16 **)(var_71 + -0x24) = &UNK_0001632d;
          var_13();
        }
      }
      goto LAB_00016338;
    }
    var_72 = (type_17 *)var_71;
    if (local_1f0->verbose != false) goto LAB_00016b18;
    if (var_3 != 0) goto LAB_00016356;
LAB_000165a0:
    var_66 = (type_2 *)0x0;
    var_4 = (type_1 *)((type_10)local_1f4 & 0xff);
LAB_000165b7:
    var_132 = (type_15 *)(var_17 & 0xfff);
    if (local_1f0->set_mode != false) {
      var_132 = (type_15 *)(local_1f0->mode & 0xfff);
    }
    if (local_1f0->preserve_ownership == false) {
      var_90 = (type_15 *)(var_17 & 0xf000);
      if ((type_15 *)(var_17 & 0xf000) == (type_15 *)0x4000) {
        *(type_4 **)(var_72 + -2) = local_1f0;
        *(type_1 **)((int)var_72 + -0x14) = var_4;
        *(type_10 *)(var_72 + -3) = var_17;
        *(char **)((int)var_72 + -0x1c) = local_1f8;
        *(char **)(var_72 + -4) = local_200;
        *(type_5 *)((int)var_72 + -0x24) = 0x16dee;
        var_83 = var_73
                           (*(char **)(var_72 + -4),*(char **)((int)var_72 + -0x1c),
                            *(type_14 *)(var_72 + -3),*(type_1 *)((int)var_72 + -0x14),
                            *(type_4 **)(var_72 + -2));
        if (var_83) {
          var_41 = (type_10)var_132 & 0x12;
          goto LAB_00016e08;
        }
      }
      else {
        *(type_4 **)(var_72 + -2) = local_1f0;
        *(type_1 **)((int)var_72 + -0x14) = var_4;
        *(type_10 *)(var_72 + -3) = var_17;
        *(char **)((int)var_72 + -0x1c) = local_1f8;
        *(char **)(var_72 + -4) = local_200;
        *(type_5 *)((int)var_72 + -0x24) = 0x16a82;
        var_83 = var_73
                           (*(char **)(var_72 + -4),*(char **)((int)var_72 + -0x1c),
                            *(type_14 *)(var_72 + -3),*(type_1 *)((int)var_72 + -0x14),
                            *(type_4 **)(var_72 + -2));
        var_41 = 0;
        if (var_83) goto LAB_0001664e;
      }
    }
    else {
      *(type_4 **)(var_72 + -2) = local_1f0;
      *(type_1 **)((int)var_72 + -0x14) = var_4;
      *(type_10 *)(var_72 + -3) = var_17;
      *(char **)((int)var_72 + -0x1c) = local_1f8;
      *(char **)(var_72 + -4) = local_200;
      *(type_5 *)((int)var_72 + -0x24) = 0x16618;
      var_83 = var_73
                         (*(char **)(var_72 + -4),*(char **)((int)var_72 + -0x1c),
                          *(type_14 *)(var_72 + -3),*(type_1 *)((int)var_72 + -0x14),
                          *(type_4 **)(var_72 + -2));
      if (var_83) {
        var_41 = (type_10)var_132 & 0x3f;
        var_90 = (type_15 *)(var_17 & 0xf000);
        if ((type_15 *)(var_17 & 0xf000) == (type_15 *)0x4000) {
LAB_00016e08:
          var_141 = local_1f0;
          if (var_74 == (type_3 *)0x0) {
            local_20c = (type_2 *)src_sb.st_dev;
            local_224 = src_sb.st_dev._4_4_;
          }
          else {
            local_20c = (type_2 *)src_sb.st_dev;
            local_224 = src_sb.st_dev._4_4_;
            var_75 = var_74;
            do {
              if ((*(type_10 *)((int)&var_75->ino + 4) == src_sb.st_ino._4_4_ &&
                   *(char **)&var_75->ino == (char *)src_sb.st_ino) &&
                 (src_sb.st_dev._4_4_ == *(type_8 *)((int)&var_75->dev + 4) &&
                  (type_2 *)src_sb.st_dev == *(type_2 **)&var_75->dev)) {
                *(char **)((int)var_72 + -0xc) = local_200;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x16e7e;
                var_154 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                *(type_5 *)(var_72 + -1) = 5;
                var_30 = "cannot copy cyclic symbolic link %s";
                goto LAB_00016e8b;
              }
              var_75 = var_75->parent;
            } while (var_75 != (type_3 *)0x0);
          }
          local_20c = (type_2 *)src_sb.st_dev;
          local_224 = src_sb.st_dev._4_4_;
          var_90 = (type_15 *)((int)var_72 - 0x11U & 0xfffffff0);
          var_90->__pad1 = src_sb.st_ino._4_4_;
          var_90->__st_ino = (type_27)(type_2 *)src_sb.st_dev;
          *(type_3 **)&var_90->st_dev = var_74;
          *(char **)((int)&var_90->st_dev + 4) = (char *)src_sb.st_ino;
          var_90->st_mode = src_sb.st_dev._4_4_;
          if (((type_9)local_1f4 == '\0') && ((dst_sb.st_mode & 0xf000) == 0x4000)) {
            if (local_1f0->set_security_context == false) {
              var_25 = local_1f0->preserve_security_context;
              if ((type_1)var_25 != false) goto LAB_0001889e;
            }
            else {
              var_25 = local_1f0->preserve_security_context;
LAB_0001889e:
              *(type_4 **)((int)var_72 + -0x24) = local_1f0;
              *(type_5 *)(var_72 + -5) = 0;
              *(type_10 *)((int)var_72 + -0x2c) = (type_10)var_25;
              *(char **)(var_72 + -6) = local_1f8;
              *(type_5 *)((int)var_72 + -0x34) = 0x188b3;
              var_83 = var_68
                                 (*(char **)(var_72 + -6),*(type_1 *)((int)var_72 + -0x2c),
                                  var_76(var_72[-5],0),*(type_4 **)((int)var_72 + -0x24));
              if ((!var_83) && (poVar42 = var_72 + -4, var_141->require_preserve_context != false))
              goto LAB_00016fad;
            }
            var_77 = var_77 & 0xffffff00;
            var_41 = 0;
          }
          else {
            *(type_10 *)((int)var_72 + -0x2c) = ~var_41 & (type_10)var_132;
            *(char **)(var_72 + -6) = local_1f8;
            *(type_5 *)((int)var_72 + -0x34) = 0x17154;
            var_3 = var_78(*(char **)(var_72 + -6),*(type_8 *)((int)var_72 + -0x2c));
            if (var_3 != 0) {
              *(char **)((int)var_72 + -0x2c) = local_1f8;
              *(type_5 *)(var_72 + -6) = 4;
              *(type_5 *)((int)var_72 + -0x34) = 100000;
              var_154 = var_10(*(type_26 *)(var_72 + -6),
                                       *(char **)((int)var_72 + -0x2c));
              poVar41 = var_72 + -5;
              *(type_5 *)(var_72 + -5) = 5;
              var_30 = "cannot create directory %s";
LAB_00016f90:
              *(char **)((int)poVar41 + -4) = var_30;
              *(type_5 *)((int)poVar41 + -8) = 0;
              *(type_5 *)((int)poVar41 + -0xc) = 0x16f98;
              uVar19 = var_12();
              *(type_5 *)((int)poVar41 + -0xc) = 0x16f9f;
              piVar21 = var_6();
              *(char **)((int)poVar41 + -0xc) = var_154;
              *(type_5 *)((int)poVar41 + -0x10) = uVar19;
              *(int *)((int)poVar41 + -0x14) = *piVar21;
              *(type_5 *)((int)poVar41 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
              *(type_16 **)((int)poVar41 + -0x1c) = &UNK_00016faa;
              var_13();
            }
            *(type_2 **)(var_72 + -5) = &dst_sb;
            *(char **)((int)var_72 + -0x2c) = local_1f8;
            *(type_5 *)(var_72 + -6) = 3;
            *(type_5 *)((int)var_72 + -0x34) = 0x17176;
            var_3 = var_15((int)var_72[-6],*(char **)((int)var_72 + -0x2c),
                                *(type_15 **)(var_72 + -5));
            _Var11 = dst_sb.st_mode;
            if (var_3 != 0) {
              *(char **)((int)var_72 + -0x2c) = local_1f8;
              *(type_5 *)(var_72 + -6) = 4;
              *(type_5 *)((int)var_72 + -0x34) = 0x18ce1;
              var_154 = var_10(*(type_26 *)(var_72 + -6),
                                       *(char **)((int)var_72 + -0x2c));
              poVar41 = var_72 + -5;
              *(type_5 *)(var_72 + -5) = 5;
              var_30 = "cannot stat %s";
              goto LAB_00016f90;
            }
            var_77 = var_77 & 0xffffff00;
            if ((dst_sb.st_mode & 0x1c0) != 0x1c0) {
              *(type_8 *)((int)var_72 + -0x2c) = dst_sb.st_mode | 0x1c0;
              *(char **)(var_72 + -6) = local_1f8;
              *(type_5 *)((int)var_72 + -0x34) = 0x171b2;
              var_3 = var_79(*(char **)(var_72 + -6),*(type_8 *)((int)var_72 + -0x2c));
              var_160 = _Var11;
              var_77 = var_1(var_77._1_3_,1);
              if (var_3 != 0) {
                *(char **)((int)var_72 + -0x2c) = local_1f8;
                *(type_5 *)(var_72 + -6) = 4;
                *(type_5 *)((int)var_72 + -0x34) = 0x19082;
                var_154 = var_10(*(type_26 *)(var_72 + -6),
                                         *(char **)((int)var_72 + -0x2c));
                poVar41 = var_72 + -5;
                *(type_5 *)(var_72 + -5) = 5;
                var_30 = "setting permissions for %s";
                goto LAB_00016f90;
              }
            }
            if (*var_106 == (type_6)0x0) {
              *(type_8 *)(var_72 + -6) = dst_sb.st_dev._4_4_;
              *(type_2 **)((int)var_72 + -0x34) = (type_2 *)dst_sb.st_dev;
              *(type_10 *)(var_72 + -7) = dst_sb.st_ino._4_4_;
              *(char **)((int)var_72 + -0x3c) = (char *)dst_sb.st_ino;
              *(char **)(var_72 + -8) = local_1f8;
              *(type_5 *)((int)var_72 + -0x44) = 0x18c19;
              var_59(*(char **)(var_72 + -8),*(type_24 *)((int)var_72 + -0x3c),
                              *(type_25 *)((int)var_72 + -0x34));
              *var_106 = (type_6)0x1;
            }
            var_154 = local_1f8;
            var_30 = local_200;
            if (local_1f0->verbose != false) {
              if (local_1f0->move_mode == false) {
                *(type_5 *)((int)var_72 + -0x24) = 0x18d28;
                var_64(var_30,var_154,(char *)0x0);
              }
              else {
                *(char **)((int)var_72 + -0x2c) = local_1f8;
                *(type_5 *)(var_72 + -6) = 4;
                *(type_5 *)((int)var_72 + -0x34) = 0x171ff;
                var_30 = var_10(*(type_26 *)(var_72 + -6),
                                         *(char **)((int)var_72 + -0x2c));
                *(type_5 *)(var_72 + -5) = 5;
                *(char **)((int)var_72 + -0x2c) = "created directory %s\n";
                *(type_5 *)(var_72 + -6) = 0;
                *(type_5 *)((int)var_72 + -0x34) = 0x17214;
                uVar19 = var_12();
                *(char **)(var_72 + -5) = var_30;
                *(type_5 *)((int)var_72 + -0x2c) = uVar19;
                *(type_5 *)(var_72 + -6) = 1;
                *(type_5 *)((int)var_72 + -0x34) = 0x17220;
                var_54();
              }
            }
          }
          poVar42 = var_72 + -4;
          var_25 = var_80 != (type_2 *)0x0 & local_1f0->one_file_system;
          if ((var_25 == 0) ||
             (*(type_8 *)((int)&var_80->st_dev + 4) == src_sb.st_dev._4_4_ &&
              *(type_2 **)&var_80->st_dev == (type_2 *)src_sb.st_dev)) {
            local_240 = (type_15 *)&dst_back_sb;
            var_141 = local_1f0;
            psVar33 = (type_15 *)&dst_back_sb;
            for (var_3 = 0x11; var_3 != 0; var_3 = var_3 + -1) {
              *(char **)&psVar33->st_dev = (char *)var_141->type_19;
              var_141 = (type_4 *)((int)var_141 + (type_10)var_144 * -8 + 4);
              psVar33 = (type_15 *)((int)psVar33 + (type_10)var_144 * -8 + 4);
            }
            *(type_5 *)((int)var_72 + -0x2c) = 2;
            *(char **)(var_72 + -6) = local_200;
            *(type_5 *)((int)var_72 + -0x34) = 0x1726d;
            var_16 = (type_11 *)
                      var_81(*(char **)(var_72 + -6),*(type_28 *)((int)var_72 + -0x2c));
            var_40 = var_16;
            if (var_16 == (type_11 *)0x0) {
              *(char **)((int)var_72 + -0x2c) = local_200;
              *(type_5 *)(var_72 + -6) = 4;
              *(type_5 *)((int)var_72 + -0x34) = 0x19153;
              var_30 = var_10(*(type_26 *)(var_72 + -6),
                                       *(char **)((int)var_72 + -0x2c));
              *(type_5 *)(var_72 + -5) = 5;
              *(char **)((int)var_72 + -0x2c) = "cannot access %s";
              *(type_5 *)(var_72 + -6) = 0;
              *(type_5 *)((int)var_72 + -0x34) = 0x19168;
              uVar19 = var_12();
              *(type_5 *)((int)var_72 + -0x34) = 0x1916f;
              piVar21 = var_6();
              *(char **)((int)var_72 + -0x34) = var_30;
              *(type_5 *)(var_72 + -7) = uVar19;
              *(int *)((int)var_72 + -0x3c) = *piVar21;
              *(type_5 *)(var_72 + -8) = 0;
                    /* WARNING: Subroutine does not return */
              *(type_16 **)((int)var_72 + -0x44) = &UNK_0001917c;
              var_13();
            }
            if (local_1f0->dereference == var_22) {
              dst_back_sb.st_dev._4_4_ = 2;
            }
            if (*(char *)&var_16->bucket == '\0') {
              var_74 = (type_3 *)((type_10)var_74._1_3_ << 8);
              var_25 = 1;
            }
            else {
              var_74 = (type_3 *)((type_10)var_74._1_3_ << 8);
              local_20c = &src_sb;
              var_132 = (type_15 *)&tmp_dst_sb;
              var_80 = (type_2 *)&var_85;
              local_224 = var_1(local_224._1_3_,1);
              do {
                *(type_5 *)(var_72 + -5) = 0;
                *(type_11 **)((int)var_72 + -0x2c) = var_16;
                *(char **)(var_72 + -6) = local_200;
                *(type_5 *)((int)var_72 + -0x34) = 0x1731f;
                psVar20 = (type_2 *)var_82(*(char **)(var_72 + -6),
                                                   *(char **)((int)var_72 + -0x2c),
                                                   *(char ***)(var_72 + -5));
                *(type_5 *)(var_72 + -5) = 0;
                *(type_11 **)((int)var_72 + -0x2c) = var_16;
                *(char **)(var_72 + -6) = local_1f8;
                var_66 = psVar20;
                *(type_5 *)((int)var_72 + -0x34) = 0x17336;
                var_30 = var_82(*(char **)(var_72 + -6),*(char **)((int)var_72 + -0x2c)
                                           ,*(char ***)(var_72 + -5));
                p_Var7 = var_4;
                cVar3 = *var_106;
                *(type_5 *)(var_72 + -5) = 0;
                *(type_2 **)((int)var_72 + -0x2c) = var_80;
                *(type_15 **)(var_72 + -6) = var_132;
                *(type_5 *)((int)var_72 + -0x34) = 0;
                *(type_15 **)(var_72 + -7) = local_240;
                *(type_15 **)((int)var_72 + -0x3c) = var_90;
                *(type_2 **)(var_72 + -8) = local_20c;
                psVar20 = var_66;
                tmp_dst_sb.st_dev._0_1_ = cVar3;
                *(type_5 *)((int)var_72 + -0x44) = 0x1737f;
                var_83 = function_1((char *)psVar20,var_30,var_62(p_Var7,0),
                                       *(type_2 **)(var_72 + -8),*(type_3 **)((int)var_72 + -0x3c)
                                       ,*(type_4 **)(var_72 + -7),
                                       *(type_1 *)((int)var_72 + -0x34),*(type_1 **)(var_72 + -6),
                                       *(type_1 **)((int)var_72 + -0x2c),*(type_1 **)(var_72 + -5));
                local_224 = var_1(local_224._1_3_,(type_9)local_224 & var_83);
                *var_84 = (type_6)((type_9)*var_84 | var_85);
                *(char **)(var_72 + -6) = var_30;
                *(type_5 *)((int)var_72 + -0x34) = 0x1739d;
                var_31(*(void **)(var_72 + -6));
                *(type_2 **)(var_72 + -6) = var_66;
                *(type_5 *)((int)var_72 + -0x34) = 0x173a9;
                var_31(*(void **)(var_72 + -6));
                if (var_85 != false) break;
                var_74 = (type_3 *)
                            var_1(var_74._1_3_,
                                     (type_9)var_74._0_1_ | (type_9)tmp_dst_sb.st_dev._0_1_);
                *(type_11 **)(var_72 + -6) = var_16;
                *(type_5 *)((int)var_72 + -0x34) = 0x172fe;
                var_42 = var_39(*(char **)(var_72 + -6));
                var_16 = (type_11 *)((int)&var_16->bucket + var_42 + 1);
              } while (*(char *)&var_16->bucket != '\0');
              var_25 = (type_9)local_224;
            }
            *(type_11 **)(var_72 + -6) = var_40;
            *(type_5 *)((int)var_72 + -0x34) = 0x173ce;
            var_31(*(void **)(var_72 + -6));
            *var_106 = var_74._0_1_;
          }
          if ((type_9)var_23 != '\0') {
            var_150 = 0;
            var_4 = (type_1 *)((type_10)var_4._1_3_ << 8);
            var_144 = false;
            local_224 = var_1(local_224._1_3_,var_25);
LAB_00016722:
            if (local_1f0->dest_info != (type_11 *)0x0) {
              var_23 = var_1(var_23._1_3_,var_144);
              *(type_2 **)((int)poVar42 + -8) = &dst_back_sb;
              *(char **)((int)poVar42 + -0xc) = local_1f8;
              *(type_5 *)((int)poVar42 + -0x10) = 3;
              *(type_5 *)((int)poVar42 + -0x14) = 0x1674c;
              var_3 = var_15(*(int *)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),
                                  *(type_15 **)((int)poVar42 + -8));
              var_141 = local_1f0;
              var_144 = (type_9)var_23;
              if (var_3 == 0) {
                *(type_2 **)((int)poVar42 + -8) = &dst_back_sb;
                *(char **)((int)poVar42 + -0xc) = local_1f8;
                *(type_11 **)((int)poVar42 + -0x10) = var_141->dest_info;
                *(type_5 *)((int)poVar42 + -0x14) = 0x16772;
                var_20(*(type_11 **)((int)poVar42 + -0x10),*(char **)((int)poVar42 + -0xc),
                            *(type_2 **)((int)poVar42 + -8));
                var_144 = (type_9)var_23;
              }
            }
            var_25 = (type_9)local_224;
            local_224 = var_1(local_224._1_3_,(type_18)var_77);
            var_72 = poVar42;
            goto LAB_00016794;
          }
          var_4 = (type_1 *)((type_10)var_4._1_3_ << 8);
          local_224 = var_1(local_224._1_3_,(type_18)var_77);
          var_72 = var_72 + -4;
        }
        else {
LAB_0001664e:
          var_4 = (type_1 *)var_1(var_4._1_3_,local_1f0->symbolic_link);
          poVar42 = var_72;
          if (local_1f0->symbolic_link != false) {
            if (*local_200 != '/') {
              uVar47 = var_72 < (type_18 *)0xc;
              uVar48 = var_72 == (type_17 *)0xc;
              *(char **)(var_72 + -2) = local_1f8;
              *(type_5 *)((int)var_72 + -0x14) = 0x1667f;
              psVar20 = (type_2 *)var_86(*(char **)(var_72 + -2));
              var_3 = 2;
              var_87 = &DAT_0002c142;
              psVar46 = psVar20;
              do {
                if (var_3 == 0) break;
                var_3 = var_3 + -1;
                var_25 = (type_9)psVar46->st_dev;
                uVar47 = *var_87 < var_25;
                uVar48 = *var_87 == var_25;
                var_87 = var_87 + (type_10)var_144 * -2 + 1;
                psVar46 = (type_2 *)((int)psVar46 + (type_10)var_144 * -2 + 1);
              } while ((bool)uVar48);
              if ((!(bool)uVar47 && !(bool)uVar48) != (bool)uVar47) {
                local_20c = psVar20;
                *(type_2 **)(var_72 + -1) = &tmp_dst_sb;
                *(type_18 **)((int)var_72 + -0xc) = &DAT_0002c142;
                *(type_5 *)(var_72 + -2) = 3;
                *(type_5 *)((int)var_72 + -0x14) = 0x17ae0;
                var_3 = var_8((int)var_72[-2],*(char **)((int)var_72 + -0xc),
                                   *(type_15 **)(var_72 + -1));
                psVar20 = local_20c;
                if (var_3 == 0) {
                  *(type_2 **)(var_72 + -1) = &dst_back_sb;
                  *(type_2 **)((int)var_72 + -0xc) = psVar20;
                  *(type_5 *)(var_72 + -2) = 3;
                  *(type_5 *)((int)var_72 + -0x14) = 0x17b03;
                  var_3 = var_8((int)var_72[-2],*(char **)((int)var_72 + -0xc),
                                     *(type_15 **)(var_72 + -1));
                  psVar20 = local_20c;
                  if ((var_3 == 0) &&
                     (((tmp_dst_sb.st_ino._4_4_ != dst_back_sb.st_ino._4_4_ ||
                        (char *)tmp_dst_sb.st_ino != (char *)dst_back_sb.st_ino ||
                       (tmp_dst_sb.st_dev._4_4_ != dst_back_sb.st_dev._4_4_)) ||
                      ((type_2 *)tmp_dst_sb.st_dev != (type_2 *)dst_back_sb.st_dev)))) {
                    *(type_2 **)(var_72 + -2) = local_20c;
                    *(type_5 *)((int)var_72 + -0x14) = 0x17b37;
                    var_31(*(void **)(var_72 + -2));
                    *(char **)(var_72 + -1) = local_1f8;
                    *(type_5 *)((int)var_72 + -0xc) = 3;
                    *(type_5 *)(var_72 + -2) = 0;
                    *(type_5 *)((int)var_72 + -0x14) = 0x17b49;
                    var_154 = var_51
                                        ((int)var_72[-2],*(type_26 *)((int)var_72 + -0xc),
                                         *(char **)(var_72 + -1));
                    *(type_5 *)(var_72 + -1) = 5;
                    var_30 = "%s: can make relative symbolic links only in current directory";
LAB_00016e8b:
                    *(char **)((int)var_72 + -0xc) = var_30;
                    *(type_5 *)(var_72 + -2) = 0;
                    *(type_5 *)((int)var_72 + -0x14) = 0x16e93;
                    uVar19 = var_12();
                    *(char **)((int)var_72 + -0x14) = var_154;
                    *(type_5 *)(var_72 + -3) = uVar19;
                    *(type_5 *)((int)var_72 + -0x1c) = 0;
                    *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                    *(type_16 **)((int)var_72 + -0x24) = &UNK_00016e9e;
                    var_13();
                  }
                }
              }
              *(type_2 **)(var_72 + -2) = psVar20;
              *(type_5 *)((int)var_72 + -0x14) = 0x166ac;
              var_31(*(void **)(var_72 + -2));
            }
            *(type_10 *)((int)var_72 + -4) = (type_10)local_1f0->unlink_dest_after_failed_open;
            *(char **)(var_72 + -1) = local_1f8;
            *(type_5 *)((int)var_72 + -0xc) = 0xffffff9c;
            *(char **)(var_72 + -2) = local_200;
            *(type_5 *)((int)var_72 + -0x14) = 0x166cf;
            var_3 = var_88(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc),
                                     *(char **)(var_72 + -1),*(type_1 *)((int)var_72 + -4));
            var_150 = 0;
            if (var_3 < 0) {
              *(char **)(var_72 + -1) = local_200;
              *(type_5 *)((int)var_72 + -0xc) = 4;
              *(type_5 *)(var_72 + -2) = 1;
              *(type_5 *)((int)var_72 + -0x14) = 0x1898c;
              var_30 = var_32((int)var_72[-2],*(type_26 *)((int)var_72 + -0xc),
                                         *(char **)(var_72 + -1));
              *(char **)(var_72 + -1) = local_1f8;
              *(type_5 *)((int)var_72 + -0xc) = 4;
              *(type_5 *)(var_72 + -2) = 0;
              local_1f4 = var_30;
              *(type_5 *)((int)var_72 + -0x14) = 0x189a4;
              var_30 = var_32((int)var_72[-2],*(type_26 *)((int)var_72 + -0xc),
                                         *(char **)(var_72 + -1));
              *(type_5 *)(var_72 + -1) = 5;
              *(char **)((int)var_72 + -0xc) = "cannot create symbolic link %s to %s";
              *(type_5 *)(var_72 + -2) = 0;
              *(type_5 *)((int)var_72 + -0x14) = 0x189b9;
              uVar19 = var_12();
              *(type_5 *)((int)var_72 + -0x14) = 0x189c0;
              piVar21 = var_6();
              *(char **)(var_72 + -2) = local_1f4;
              *(char **)((int)var_72 + -0x14) = var_30;
              *(type_5 *)(var_72 + -3) = uVar19;
              *(int *)((int)var_72 + -0x1c) = *piVar21;
              *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
              *(type_16 **)((int)var_72 + -0x24) = &UNK_000189d4;
              var_13();
            }
            goto LAB_000166da;
          }
          if (local_1f0->hard_link != false) {
            var_83 = local_1f0->unlink_dest_after_failed_open;
            *(type_2 **)((int)var_72 + -0xc) = local_20c;
            var_154 = local_1f8;
            var_150 = 0;
            *(type_5 *)(var_72 + -2) = 0;
            var_30 = local_200;
            *(type_5 *)((int)var_72 + -0x14) = 0x18382;
            var_83 = var_61(var_30,var_154,var_83,var_76(var_72[-2],0),
                                      *(type_1 *)((int)var_72 + -0xc));
            if (var_83) goto LAB_000166da;
LAB_00016fad:
            var_72 = poVar42;
            if (local_1f0->preserve_security_context != false) {
LAB_000177a0:
              *(type_5 *)((int)var_72 + -4) = 0x177a5;
              var_63();
            }
            if (var_66 == (type_2 *)0x0) {
              *(type_8 *)((int)var_72 + -4) = src_sb.st_dev._4_4_;
              *(type_2 **)((int)var_72 + -8) = (type_2 *)src_sb.st_dev;
              *(type_10 *)((int)var_72 + -0xc) = src_sb.st_ino._4_4_;
              *(char **)((int)var_72 + -0x10) = (char *)src_sb.st_ino;
              *(type_5 *)((int)var_72 + -0x14) = 0x18325;
              var_89(*(type_24 *)((int)var_72 + -0x10),*(type_25 *)((int)var_72 + -8));
            }
            goto LAB_00016fcb;
          }
          if ((var_90 == (type_15 *)0x8000) ||
             ((var_90 != (type_15 *)0xa000 & local_1f0->copy_as_regular) != 0)) {
            var_139 = src_sb.st_mode;
            local_20c = (type_2 *)var_1(local_20c._1_3_,local_1f0->data_copy_required);
            *(type_10 *)((int)var_72 + -0xc) = (type_10)(local_1f0->dereference == var_7) << 0x11;
            *(char **)(var_72 + -2) = local_200;
            *(type_5 *)((int)var_72 + -0x14) = 0x17b97;
            var_4 = (type_1 *)var_91(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc));
            if ((int)var_4 < 0) {
              *(char **)((int)var_72 + -0xc) = local_200;
              *(type_5 *)(var_72 + -2) = 4;
              *(type_5 *)((int)var_72 + -0x14) = 0x18d03;
              var_154 = var_10(*(type_26 *)(var_72 + -2),
                                       *(char **)((int)var_72 + -0xc));
              poVar41 = var_72 + -1;
              *(type_5 *)(var_72 + -1) = 5;
              var_30 = "cannot open %s for reading";
              goto LAB_00016f90;
            }
            *(type_2 **)(var_72 + -1) = &tmp_dst_sb;
            *(type_1 **)((int)var_72 + -0xc) = var_4;
            *(type_5 *)(var_72 + -2) = 3;
            *(type_5 *)((int)var_72 + -0x14) = 0x17bbf;
            var_3 = var_92((int)var_72[-2],*(int *)((int)var_72 + -0xc),
                                *(type_15 **)(var_72 + -1));
            var_141 = local_1f0;
            if (var_3 != 0) {
              *(char **)((int)var_72 + -0xc) = local_200;
              *(type_5 *)(var_72 + -2) = 4;
              *(type_5 *)((int)var_72 + -0x14) = 0x18f4d;
              var_30 = var_10(*(type_26 *)(var_72 + -2),
                                       *(char **)((int)var_72 + -0xc));
              *(type_5 *)(var_72 + -1) = 5;
              *(char **)((int)var_72 + -0xc) = "cannot fstat %s";
              *(type_5 *)(var_72 + -2) = 0;
              *(type_5 *)((int)var_72 + -0x14) = 0x18f62;
              uVar19 = var_12();
              *(type_5 *)((int)var_72 + -0x14) = 0x18f69;
              piVar21 = var_6();
              *(char **)((int)var_72 + -0x14) = var_30;
              *(type_5 *)(var_72 + -3) = uVar19;
              *(int *)((int)var_72 + -0x1c) = *piVar21;
              goto LAB_00018b73;
            }
            if ((src_sb.st_ino._4_4_ != tmp_dst_sb.st_ino._4_4_ ||
                 (char *)src_sb.st_ino != (char *)tmp_dst_sb.st_ino) ||
               (src_sb.st_dev._4_4_ != tmp_dst_sb.st_dev._4_4_ ||
                (type_2 *)src_sb.st_dev != (type_2 *)tmp_dst_sb.st_dev)) {
              *(char **)((int)var_72 + -0xc) = local_200;
              *(type_5 *)(var_72 + -2) = 4;
              *(type_5 *)((int)var_72 + -0x14) = 0x18b5a;
              var_30 = var_10(*(type_26 *)(var_72 + -2),
                                       *(char **)((int)var_72 + -0xc));
              *(type_5 *)(var_72 + -1) = 5;
              *(char **)((int)var_72 + -0xc) =
                   "skipping file %s, as it was replaced while being copied";
              *(type_5 *)(var_72 + -2) = 0;
              *(type_5 *)((int)var_72 + -0x14) = 0x18b6f;
              uVar19 = var_12();
              *(char **)((int)var_72 + -0x14) = var_30;
              *(type_5 *)(var_72 + -3) = uVar19;
              *(type_5 *)((int)var_72 + -0x1c) = 0;
              goto LAB_00018b73;
            }
            var_93 = (type_10)var_132 & 0x1ff;
            if ((type_9)local_1f4 != '\0') {
LAB_00019094:
              var_145 = var_41;
LAB_000190a0:
              var_107 = (type_6 *)(~var_145 & var_93);
              *(type_6 **)(var_72 + -1) = var_107;
              *(type_5 *)((int)var_72 + -0xc) = 0xc1;
              *(char **)(var_72 + -2) = local_1f8;
              var_106 = var_107;
              *(type_5 *)((int)var_72 + -0x14) = 0x190c8;
              var_75 = (type_3 *)
                        var_91(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc));
              var_74 = var_75;
              *(type_5 *)((int)var_72 + -0x14) = 0x190d5;
              var_84 = (type_6 *)var_6();
              var_3 = *(int *)var_84;
              var_25 = var_3 == 0x11 & (type_9)((type_10)var_75 >> 0x1f);
              var_80 = (type_2 *)var_1(var_80._1_3_,var_25);
              if (var_25 == 0) {
LAB_00019445:
                var_25 = var_3 == 0x15 & (type_9)((type_10)var_74 >> 0x1f);
                local_1f4 = (char *)var_1(local_1f4._1_3_,var_25);
                if (var_25 == 0) {
                  local_1f4 = (char *)var_1(local_1f4._1_3_,1);
                  if (-1 < (int)var_74) {
LAB_00017c81:
                    *(type_15 **)(var_72 + -1) = (type_15 *)&dst_back_sb;
                    *(type_3 **)((int)var_72 + -0xc) = var_74;
                    *(type_5 *)(var_72 + -2) = 3;
                    local_240 = (type_15 *)&dst_back_sb;
                    *(type_5 *)((int)var_72 + -0x14) = 0x17c9e;
                    var_3 = var_92((int)var_72[-2],*(int *)((int)var_72 + -0xc),
                                        *(type_15 **)(var_72 + -1));
                    if (var_3 != 0) {
                      *(int *)((int)var_72 + -4) = var_3;
                      *(int *)(var_72 + -1) = var_3;
                      *(char **)((int)var_72 + -0xc) = local_1f8;
                      *(type_5 *)(var_72 + -2) = 4;
                      *(type_5 *)((int)var_72 + -0x14) = 0x198f9;
                      var_30 = var_10(*(type_26 *)(var_72 + -2),
                                               *(char **)((int)var_72 + -0xc));
                      *(type_5 *)(var_72 + -1) = 5;
                      *(char **)((int)var_72 + -0xc) = "cannot fstat %s";
                      *(type_5 *)(var_72 + -2) = 0;
                      *(type_5 *)((int)var_72 + -0x14) = 0x1990e;
                      uVar19 = var_12();
                      *(type_5 *)((int)var_72 + -0x14) = 0x19915;
                      piVar21 = var_6();
                      *(char **)((int)var_72 + -0x14) = var_30;
                      *(type_5 *)(var_72 + -3) = uVar19;
                      *(int *)((int)var_72 + -0x1c) = *piVar21;
                      *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                      *(type_16 **)((int)var_72 + -0x24) = &UNK_00019922;
                      var_13();
                    }
                    uVar19 = extraout_ECX;
                    if ((type_9)local_20c != '\0') {
                      if (local_1f0->reflink_mode != var_94) {
                        *(type_4 **)((int)var_72 + -4) = local_1f0;
                        *(type_1 **)(var_72 + -1) = var_4;
                        *(type_5 *)((int)var_72 + -0xc) = 0x40049409;
                        *(type_3 **)(var_72 + -2) = var_74;
                        *(type_5 *)((int)var_72 + -0x14) = 0x19d52;
                        var_3 = var_95((int)var_72[-2],*(type_29 *)((int)var_72 + -0xc));
                        uVar19 = extraout_ECX_11;
                        if (var_3 == 0) goto LAB_000194e2;
                        if (local_1f0->reflink_mode == var_96) {
                          *(type_4 **)((int)var_72 + -4) = local_1f0;
                          *(char **)(var_72 + -1) = local_200;
                          *(type_5 *)((int)var_72 + -0xc) = 4;
                          *(type_5 *)(var_72 + -2) = 1;
                          *(type_5 *)((int)var_72 + -0x14) = 0x19d7d;
                          var_30 = var_32((int)var_72[-2],
                                                     *(type_26 *)((int)var_72 + -0xc),
                                                     *(char **)(var_72 + -1));
                          *(char **)(var_72 + -1) = local_1f8;
                          *(type_5 *)((int)var_72 + -0xc) = 4;
                          *(type_5 *)(var_72 + -2) = 0;
                          *(type_5 *)((int)var_72 + -0x14) = 0x19d91;
                          local_20c = (type_2 *)var_32((int)var_72[-2],
                                                               *(type_26 *)
                                                                ((int)var_72 + -0xc),
                                                               *(char **)(var_72 + -1));
                          *(type_5 *)(var_72 + -1) = 5;
                          *(char **)((int)var_72 + -0xc) = "failed to clone %s from %s";
                          *(type_5 *)(var_72 + -2) = 0;
                          *(type_5 *)((int)var_72 + -0x14) = 0x19daa;
                          uVar19 = var_12();
                          *(type_5 *)((int)var_72 + -0x14) = 0x19db1;
                          piVar21 = var_6();
                          psVar20 = local_20c;
                          *(char **)(var_72 + -2) = var_30;
                          *(type_2 **)((int)var_72 + -0x14) = psVar20;
                          *(type_5 *)(var_72 + -3) = uVar19;
                          *(int *)((int)var_72 + -0x1c) = *piVar21;
                          *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                          *(type_16 **)((int)var_72 + -0x24) = &UNK_00019dc7;
                          var_13();
                        }
                      }
                      *(type_5 *)((int)var_72 + -4) = 0x17ccd;
                      var_101 = var_97();
                      var_24 = dst_back_sb.st_blksize - 0x20000;
                      local_25c = dst_back_sb.st_blksize;
                      var_104 = (type_6 *)dst_back_sb.st_blksize;
                      if (0x1ffe0000 < var_24) {
                        var_104 = get_quoting_style;
                        var_24 = 0x200;
                        if (dst_back_sb.st_blksize - 1U < 0x20000000) {
                          var_24 = dst_back_sb.st_blksize;
                        }
                        local_25c = var_24;
                      }
                      *(type_10 *)((int)var_72 + -4) = var_24;
                      *(type_10 *)(var_72 + -1) = var_24;
                      *(type_5 *)((int)var_72 + -0xc) = 2;
                      *(type_5 *)(var_72 + -2) = 0;
                      *(type_5 *)((int)var_72 + -0x14) = 0;
                      *(type_5 *)(var_72 + -3) = 0;
                      *(type_5 *)((int)var_72 + -0x1c) = 0;
                      *(type_1 **)(var_72 + -4) = var_4;
                      *(type_5 *)((int)var_72 + -0x24) = 0x17d28;
                      var_98((int)var_72[-4],*(type_17 *)((int)var_72 + -0x1c),
                               *(type_17 *)((int)var_72 + -0x14),*(type_30 *)((int)var_72 + -0xc))
                      ;
                      var_106 = (type_6 *)(tmp_dst_sb.st_mode & 0xf000);
                      var_52 = false;
                      if ((type_6 *)(tmp_dst_sb.st_mode & 0xf000) == (type_6 *)0x8000) {
                        var_24 = tmp_dst_sb.st_size._4_4_ >> 0x1f & 0x1ff;
                        var_3 = tmp_dst_sb.st_size._4_4_ +
                                 (type_10)var_99(var_24,(type_10)(type_6 *)tmp_dst_sb.st_size);
                        var_9 = var_3 >> 9;
                        var_24 = (type_10)((type_10)tmp_dst_sb.st_blocks <
                                       ((type_10)((type_6 *)tmp_dst_sb.st_size + var_24) >> 9 |
                                       var_3 * 0x800000));
                        var_3 = tmp_dst_sb.st_blocks._4_4_ - var_9;
                        var_52 = (var_100(tmp_dst_sb.st_blocks._4_4_,var_9) !=
                                 var_100(var_3,var_24)) != (int)(var_3 - var_24) < 0;
                      }
                      var_84 = (type_6 *)(var_101 - 1);
                      if ((dst_back_sb.st_mode & 0xf000) == 0x8000) {
                        if (local_1f0->sparse_mode != var_102) {
                          if ((local_1f0->sparse_mode == var_103) && (var_52)) {
                            *(type_6 **)(var_72 + -2) = var_104 + var_101;
                            *(type_5 *)((int)var_72 + -0x14) = 0x199e0;
                            var_84 = (type_6 *)var_45(*(size_t *)(var_72 + -2));
                            local_27c = (type_1 *)var_84 + (var_101 - 1) +
                                        -((type_10)((type_1 *)var_84 + (var_101 - 1)) % var_101);
                            goto LAB_000199fc;
                          }
                          goto LAB_00017d9d;
                        }
                        *(type_6 **)(var_72 + -2) = var_104 + var_101;
                        *(type_5 *)((int)var_72 + -0x14) = 0x19f62;
                        var_84 = (type_6 *)var_45(*(size_t *)(var_72 + -2));
                        local_27c = (type_1 *)var_84 + (var_101 - 1) +
                                    -((type_10)((type_1 *)var_84 + (var_101 - 1)) % var_101);
                        if (var_52) {
LAB_000199fc:
                          var_125 = local_1f0->sparse_mode;
                          var_112 = (type_9)local_20c;
                          goto LAB_00019a18;
                        }
                        var_80 = (type_2 *)&var_85;
                        var_24 = (type_10)(local_1f0->sparse_mode == var_102);
                      }
                      else {
LAB_00017d9d:
                        var_84 = (type_6 *)(0x7fffffff - var_101);
                        _Var27 = tmp_dst_sb.st_blksize;
                        if (0x1ffe0000 < tmp_dst_sb.st_blksize - 0x20000U) {
                          _Var27 = 0x20000;
                        }
                        *(type_5 *)((int)var_72 + -4) = 0x20000;
                        *(type_6 **)(var_72 + -1) = (type_6 *)(0x7fffffff - var_101);
                        *(type_6 **)((int)var_72 + -0xc) = var_104;
                        *(type_12 *)(var_72 + -2) = _Var27;
                        *(type_5 *)((int)var_72 + -0x14) = 0x17dd4;
                        var_107 = (type_6 *)var_105(*(size_t *)(var_72 + -2),
                                                     *(size_t *)((int)var_72 + -0xc),
                                                     *(size_t *)(var_72 + -1));
                        if ((var_106 == (type_6 *)0x8000) &&
                           (tmp_dst_sb.st_size._4_4_ <
                            (int)(type_10)((type_6 *)tmp_dst_sb.st_size < var_104))) {
                          var_104 = (type_6 *)tmp_dst_sb.st_size + 1;
                        }
                        var_106 = var_107 + -1 + (int)var_104;
                        var_104 = var_106 + -((type_10)var_106 % (type_10)var_107);
                        if ((var_104 == (type_6 *)0x0) || (var_84 < var_104)) {
                          var_104 = var_107;
                        }
                        *(type_6 **)(var_72 + -2) = var_104 + var_101;
                        *(type_5 *)((int)var_72 + -0x14) = 0x17e2e;
                        var_84 = (type_6 *)var_45(*(size_t *)(var_72 + -2));
                        local_27c = (type_1 *)var_84 + (var_101 - 1) +
                                    -((type_10)((type_1 *)var_84 + (var_101 - 1)) % var_101);
                        if (var_52) {
                          var_112 = '\0';
                          var_125 = var_126;
LAB_00019a18:
                          var_107 = (type_6 *)0x0;
                          var_3 = 0;
                          var_106 = (type_6 *)tmp_dst_sb.st_size;
                          *(type_6 **)((int)var_72 + -4) = (type_6 *)tmp_dst_sb.st_size;
                          *(type_6 **)(var_72 + -1) = (type_6 *)tmp_dst_sb.st_size;
                          *(type_2 **)((int)var_72 + -0xc) = (type_2 *)&var_85;
                          *(type_1 **)(var_72 + -2) = var_4;
                          var_115 = tmp_dst_sb.st_size._4_4_;
                          var_80 = (type_2 *)&var_85;
                          *(type_5 *)((int)var_72 + -0x14) = 0x19a4e;
                          var_108((int)var_72[-2],*(type_31 **)((int)var_72 + -0xc));
                          local_280 = &_GLOBAL_OFFSET_TABLE_;
                          var_122 = (type_6 *)0x0;
                          var_121 = 0;
                          var_77 = 0;
                          local_248 = 0;
                          do {
                            *(type_2 **)(var_72 + -2) = var_80;
                            *(type_5 *)((int)var_72 + -0x14) = 0x19a93;
                            var_83 = var_109(*(type_31 **)(var_72 + -2));
                            var_70 = local_280;
                            if (!var_83) {
                              uVar19 = extraout_ECX_10;
                              if (var_110 == '\0') {
                                if (var_111 == '\0') {
                                  *(type_10 *)((int)var_72 + -4) = var_1(extraout_var_00,var_83);
                                  *(char **)(var_72 + -1) = local_200;
                                  *(type_5 *)((int)var_72 + -0xc) = 3;
                                  *(type_5 *)(var_72 + -2) = 0;
                                  *(type_5 *)((int)var_72 + -0x14) = 0x1a1b5;
                                  var_30 = var_51
                                                      ((int)var_72[-2],
                                                       *(type_26 *)((int)var_72 + -0xc),
                                                       *(char **)(var_72 + -1));
                                  *(type_5 *)(var_72 + -1) = 5;
                                  var_70 = var_70 + -0x2aaf;
                                  goto LAB_00019fe6;
                                }
                                var_101 = 0;
                                if (var_112 != '\0') {
                                  var_101 = local_25c;
                                }
                                var_24 = (type_10)(local_1f0->sparse_mode == var_102);
                                local_25c = var_101;
                                goto LAB_00017e78;
                              }
                              break;
                            }
                            if (var_113 != (type_15 *)0x0) {
                              var_132 = (type_15 *)0x0;
                              var_119 = var_107;
                              var_117 = var_77;
                              var_120 = local_248;
                              var_118 = var_3;
                              do {
                                puVar1 = (type_5 *)(var_114 + (int)var_132 * 0x14);
                                var_107 = (type_6 *)*puVar1;
                                var_3 = puVar1[1];
                                var_77 = puVar1[2];
                                local_248 = puVar1[3];
                                var_116 = puVar1[3] + var_3 + (type_10)var_99(var_77,(type_10)var_107);
                                var_9 = var_115 - var_116;
                                if ((var_100(var_115,var_116) !=
                                    var_100(var_9,(type_10)(var_106 < var_107 + var_77))) !=
                                    (int)(var_9 - (type_10)(var_106 < var_107 + var_77)) < 0) {
                                  if ((var_100(var_115,var_3) !=
                                      var_100(var_115 - var_3,(type_10)(var_106 < var_107))) !=
                                      (int)((var_115 - var_3) - (type_10)(var_106 < var_107)) < 0)
                                  {
                                    var_107 = var_106;
                                    var_3 = var_115;
                                  }
                                  var_77 = (int)var_106 - (int)var_107;
                                  local_248 = (var_115 - var_3) - (type_10)(var_106 < var_107);
                                }
                                var_122 = (type_6 *)(((int)var_107 - (int)var_119) - var_117);
                                var_121 = (((var_3 - var_118) - (type_10)(var_107 < var_119)) -
                                            var_120) -
                                            (type_10)((type_10)((int)var_107 - (int)var_119) < var_117
                                                  );
                                local_20c = (type_2 *)((type_10)local_20c & 0xffffff00);
                                if (var_121 != 0 || var_122 != (type_6 *)0x0) {
                                  *(type_5 *)((int)var_72 + -4) = 0;
                                  *(int *)(var_72 + -1) = var_3;
                                  *(type_6 **)((int)var_72 + -0xc) = var_107;
                                  *(type_1 **)(var_72 + -2) = var_4;
                                  *(type_5 *)((int)var_72 + -0x14) = 0x19ca8;
                                  var_124 = var_123((int)var_72[-2],
                                                   *(type_20 *)((int)var_72 + -0xc),
                                                   *(int *)((int)var_72 + -4));
                                  var_30 = local_1f8;
                                  var_75 = var_74;
                                  if (var_124 < 0) {
                                    *(int *)((int)var_72 + -4) = var_3;
                                    var_70 = local_280;
                                    *(int *)(var_72 + -1) = var_3;
                                    *(char **)((int)var_72 + -0xc) = local_200;
                                    *(type_5 *)(var_72 + -2) = 4;
                                    *(type_5 *)((int)var_72 + -0x14) = 0x19f22;
                                    var_30 = var_10(*(type_26 *)(var_72 + -2),
                                                             *(char **)((int)var_72 + -0xc));
                                    *(type_5 *)(var_72 + -1) = 5;
                                    var_70 = (type_16 **)((int)var_70 + -0xb20b);
LAB_00019f2f:
                                    *(type_16 ***)((int)var_72 + -0xc) = var_70;
                                    *(type_5 *)(var_72 + -2) = 0;
                                    *(type_5 *)((int)var_72 + -0x14) = 0x19f37;
                                    uVar19 = var_12();
                                    *(type_5 *)((int)var_72 + -0x14) = 0x19f3e;
                                    piVar21 = var_6();
                                    *(char **)((int)var_72 + -0x14) = var_30;
                                    *(type_5 *)(var_72 + -3) = uVar19;
                                    *(int *)((int)var_72 + -0x1c) = *piVar21;
                                    *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                                    *(type_16 **)((int)var_72 + -0x24) = &UNK_00019f49;
                                    var_13();
                                  }
                                  if (var_125 == var_126) {
                                    *(type_5 *)((int)var_72 + -4) = 0x19d2c;
                                    var_83 = var_127((int)var_75,*var_72);
                                    if (!var_83) {
                                      *(type_6 **)((int)var_72 + -4) = var_107;
                                      var_70 = local_280;
                                      *(char **)(var_72 + -1) = local_1f8;
                                      *(type_5 *)((int)var_72 + -0xc) = 3;
                                      *(type_5 *)(var_72 + -2) = 0;
                                      *(type_5 *)((int)var_72 + -0x14) = 0x1a193;
                                      var_30 = var_51
                                                          ((int)var_72[-2],
                                                           *(type_26 *)((int)var_72 + -0xc),
                                                           *(char **)(var_72 + -1));
                                      *(type_5 *)(var_72 + -1) = 5;
                                      var_70 = var_70 + -0x2c19;
                                      goto LAB_00019f2f;
                                    }
                                    var_24 = 0;
                                    goto LAB_00019af3;
                                  }
                                  var_52 = var_125 == var_102;
                                  *(int *)((int)var_72 + -0xc) = var_121;
                                  *(type_6 **)(var_72 + -2) = var_122;
                                  *(type_5 *)((int)var_72 + -0x14) = 0x19ce6;
                                  var_83 = var_128((int)var_75,var_30,var_52,var_72[-2]);
                                  local_20c = (type_2 *)var_1(local_20c._1_3_,var_83);
                                  if (var_83) goto LAB_00019ae0;
LAB_00019cf7:
                                  var_70 = local_280;
                                  *(type_22 *)(var_72 + -2) = var_114;
                                  *(type_5 *)((int)var_72 + -0x14) = 0x19d0d;
                                  var_31(*(void **)(var_72 + -2));
                                  var_150 = 0;
                                  goto LAB_00018028;
                                }
LAB_00019ae0:
                                var_24 = 0;
                                if (var_125 == var_102) {
                                  var_24 = local_25c;
                                }
LAB_00019af3:
                                p_Var7 = local_27c;
                                *(type_1 **)(var_72 + -2) = &read_hole;
                                *(type_1 **)((int)var_72 + -0x14) = &var_136;
                                var_75 = var_74;
                                *(int *)(var_72 + -3) = local_248;
                                *(type_10 *)((int)var_72 + -0x1c) = var_77;
                                *(char **)(var_72 + -4) = local_1f8;
                                *(char **)((int)var_72 + -0x24) = local_200;
                                *(type_5 *)(var_72 + -5) = 1;
                                *(type_10 *)((int)var_72 + -0x2c) = var_24;
                                p_Var9 = var_4;
                                *(type_6 **)(var_72 + -6) = var_104;
                                *(type_5 *)((int)var_72 + -0x34) = 0x19b3c;
                                var_83 = var_129((int)p_Var9,(int)var_75,p_Var7,
                                                     *(size_t *)(var_72 + -6),
                                                     *(size_t *)((int)var_72 + -0x2c),
                                                     var_76(var_72[-5],0),
                                                     *(char **)((int)var_72 + -0x24),
                                                     *(char **)(var_72 + -4),
                                                     *(type_32 *)((int)var_72 + -0x1c),
                                                     *(type_17 **)((int)var_72 + -0x14),
                                                     *(type_1 **)(var_72 + -2));
                                if (!var_83) goto LAB_00019cf7;
                                var_121 = var_3 + var_130 +
                                            (type_10)var_99((type_10)var_107,var_131);
                                var_122 = var_107 + var_131;
                                uVar47 = (type_9)local_20c;
                                if (var_130 != 0 || var_131 != 0) {
                                  uVar47 = read_hole;
                                }
                                local_20c = (type_2 *)var_1(local_20c._1_3_,uVar47);
                                if (var_121 == var_115 &&
                                    var_107 + var_131 == var_106) {
                                  var_110 = '\x01';
                                  break;
                                }
                                var_119 = var_107;
                                var_132 = (type_15 *)((int)&var_132->st_dev + 1);
                                var_118 = var_3;
                                var_117 = var_77;
                                var_120 = local_248;
                              } while (var_132 < var_113);
                            }
                            *(type_22 *)(var_72 + -2) = var_114;
                            *(type_5 *)((int)var_72 + -0x14) = 0x1969a;
                            var_31(*(void **)(var_72 + -2));
                            var_114 = 0;
                            var_113 = (type_15 *)0x0;
                            uVar19 = extraout_ECX_05;
                          } while (var_110 == '\0');
                          var_75 = var_74;
                          var_70 = local_280;
                          var_52 = true;
                          if ((var_100(var_121,var_115) !=
                              var_100(var_121 - var_115,(type_10)(var_122 < var_106))) ==
                              (int)((var_121 - var_115) - (type_10)(var_122 < var_106)) < 0) {
                            var_52 = false;
                            if ((type_9)local_20c == '\0') goto LAB_00017ed4;
                          }
                          if (var_125 == var_126) {
                            *(type_5 *)((int)var_72 + -4) = 0x1a279;
                            var_83 = var_127((int)var_75,*var_72);
                            var_3 = var_1(extraout_var_01,var_83);
                            uVar19 = extraout_ECX_14;
                            if (!var_83) goto LAB_00019fca;
                          }
                          else {
                            *(type_5 *)((int)var_72 + -4) = uVar19;
                            *(int *)(var_72 + -1) = var_115;
                            *(type_6 **)((int)var_72 + -0xc) = var_106;
                            *(type_3 **)(var_72 + -2) = var_74;
                            *(type_5 *)((int)var_72 + -0x14) = 0x1971b;
                            var_3 = var_133((int)var_72[-2],
                                                 *(type_20 *)((int)var_72 + -0xc));
                            var_134 = var_106;
                            var_107 = var_122;
                            if (var_3 != 0) goto LAB_00019fca;
                            uVar19 = extraout_ECX_06;
                            if ((var_125 == var_102) && (var_52)) {
                              *(type_5 *)((int)var_72 + -4) = extraout_EDX_00;
                              var_3 = var_121;
                              *(type_5 *)(var_72 + -1) = extraout_EDX_00;
                              *(type_10 *)((int)var_72 + -0xc) =
                                   (var_115 - var_3) - (type_10)(var_134 < var_107);
                              *(int *)(var_72 + -2) = (int)var_134 - (int)var_107;
                              *(int *)((int)var_72 + -0x14) = var_3;
                              *(type_6 **)(var_72 + -3) = var_107;
                              *(type_5 *)((int)var_72 + -0x1c) = 3;
                              *(type_3 **)(var_72 + -4) = var_74;
                              *(type_5 *)((int)var_72 + -0x24) = 0x1976c;
                              var_9 = var_135((int)var_72[-4],*(int *)((int)var_72 + -0x1c),
                                                   var_72[-3],var_72[-2]);
                              uVar19 = extraout_ECX_07;
                              if (var_9 < 0) {
                                *(type_5 *)((int)var_72 + -4) = 0x1977c;
                                piVar21 = var_6();
                                uVar19 = extraout_ECX_08;
                                if ((*piVar21 != 0x26) && (*piVar21 != 0x5f)) {
                                  *(int *)((int)var_72 + -4) = var_3;
                                  *(int *)(var_72 + -1) = var_3;
                                  *(char **)((int)var_72 + -0xc) = local_1f8;
                                  *(type_5 *)(var_72 + -2) = 4;
                                  *(type_5 *)((int)var_72 + -0x14) = 0x197a1;
                                  var_30 = var_10(*(type_26 *)(var_72 + -2),
                                                           *(char **)((int)var_72 + -0xc));
                                  *(type_5 *)(var_72 + -1) = 5;
                                  *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb1fb;
                                  *(type_5 *)(var_72 + -2) = 0;
                                  *(type_5 *)((int)var_72 + -0x14) = 0x197b6;
                                  uVar19 = var_12();
                                  *(char **)((int)var_72 + -0x14) = var_30;
                                  *(type_5 *)(var_72 + -3) = uVar19;
                                  *(int *)((int)var_72 + -0x1c) = *piVar21;
                                  *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                                  *(type_16 **)((int)var_72 + -0x24) = &UNK_000197c1;
                                  var_13();
                                }
                              }
                            }
                          }
                          goto LAB_00017ed4;
                        }
                        local_25c = 0;
                        var_80 = (type_2 *)&var_85;
                        var_24 = (type_10)(local_1f0->sparse_mode == var_102);
                      }
LAB_00017e78:
                      p_Var7 = local_27c;
                      *(type_1 **)(var_72 + -2) = &var_136;
                      var_75 = var_74;
                      *(type_2 **)((int)var_72 + -0x14) = var_80;
                      *(type_5 *)(var_72 + -3) = 0xffffffff;
                      *(type_5 *)((int)var_72 + -0x1c) = 0xffffffff;
                      *(char **)(var_72 + -4) = local_1f8;
                      *(char **)((int)var_72 + -0x24) = local_200;
                      *(type_10 *)(var_72 + -5) = var_24;
                      *(type_10 *)((int)var_72 + -0x2c) = local_25c;
                      p_Var9 = var_4;
                      *(type_6 **)(var_72 + -6) = var_104;
                      *(type_5 *)((int)var_72 + -0x34) = 0x17ebc;
                      var_83 = var_129((int)p_Var9,(int)var_75,p_Var7,*(size_t *)(var_72 + -6)
                                           ,*(size_t *)((int)var_72 + -0x2c),var_76(var_72[-5],0),
                                           *(char **)((int)var_72 + -0x24),*(char **)(var_72 + -4)
                                           ,*(type_32 *)((int)var_72 + -0x1c),
                                           *(type_17 **)((int)var_72 + -0x14),
                                           *(type_1 **)(var_72 + -2));
                      if (var_83) {
                        uVar19 = extraout_ECX_00;
                        if (var_136 != false) {
                          *(type_10 *)((int)var_72 + -4) = var_1(extraout_var,var_83);
                          *(type_5 *)(var_72 + -1) = local_1d0;
                          *(type_5 *)((int)var_72 + -0xc) = _local_copy_into_self;
                          *(type_3 **)(var_72 + -2) = var_74;
                          *(type_5 *)((int)var_72 + -0x14) = 0x19fbf;
                          var_3 = var_133((int)var_72[-2],*(type_20 *)((int)var_72 + -0xc))
                          ;
                          uVar19 = extraout_ECX_13;
                          if (var_3 < 0) {
LAB_00019fca:
                            *(int *)((int)var_72 + -4) = var_3;
                            *(int *)(var_72 + -1) = var_3;
                            *(char **)((int)var_72 + -0xc) = local_1f8;
                            *(type_5 *)(var_72 + -2) = 4;
                            *(type_5 *)((int)var_72 + -0x14) = 0x19fd9;
                            var_30 = var_10(*(type_26 *)(var_72 + -2),
                                                     *(char **)((int)var_72 + -0xc));
                            *(type_5 *)(var_72 + -1) = 5;
                            var_70 = (type_16 **)((int)var_70 + -0xb053);
LAB_00019fe6:
                            *(type_16 ***)((int)var_72 + -0xc) = var_70;
                            *(type_5 *)(var_72 + -2) = 0;
                            *(type_5 *)((int)var_72 + -0x14) = 0x19fee;
                            uVar19 = var_12();
                            *(type_5 *)((int)var_72 + -0x14) = 0x19ff5;
                            piVar21 = var_6();
                            *(char **)((int)var_72 + -0x14) = var_30;
                            *(type_5 *)(var_72 + -3) = uVar19;
                            *(int *)((int)var_72 + -0x1c) = *piVar21;
                            *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                            *(type_16 **)((int)var_72 + -0x24) = &UNK_0001a002;
                            var_13();
                          }
                        }
                        goto LAB_00017ed4;
                      }
LAB_000197c4:
                      var_150 = 0;
                      goto LAB_00018028;
                    }
LAB_000194e2:
                    var_84 = (type_6 *)0x0;
LAB_00017ed4:
                    if (local_1f0->preserve_timestamps != false) {
                      type_23[0].tv_sec = src_sb.st_atim.tv_sec;
                      type_23[0].tv_nsec = src_sb.st_atim.tv_nsec;
                      type_23[1].tv_sec = src_sb.st_mtim.tv_sec;
                      type_23[1].tv_nsec = src_sb.st_mtim.tv_nsec;
                      *(type_33 *)((int)var_72 + -4) = src_sb.st_mtim.tv_nsec;
                      *(type_23 **)(var_72 + -1) = type_23;
                      *(char **)((int)var_72 + -0xc) = local_1f8;
                      *(type_3 **)(var_72 + -2) = var_74;
                      *(type_5 *)((int)var_72 + -0x14) = 0x1988f;
                      var_3 = var_137((int)var_72[-2],*(char **)((int)var_72 + -0xc),
                                         *(type_23 **)(var_72 + -1));
                      uVar19 = extraout_ECX_09;
                      if (var_3 != 0) {
                        *(int *)((int)var_72 + -4) = var_3;
                        *(int *)(var_72 + -1) = var_3;
                        *(char **)((int)var_72 + -0xc) = local_1f8;
                        *(type_5 *)(var_72 + -2) = 4;
                        *(type_5 *)((int)var_72 + -0x14) = 0x198a9;
                        var_30 = var_10(*(type_26 *)(var_72 + -2),
                                                 *(char **)((int)var_72 + -0xc));
                        *(type_5 *)(var_72 + -1) = 5;
                        *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb03f;
                        *(type_5 *)(var_72 + -2) = 0;
                        *(type_5 *)((int)var_72 + -0x14) = 0x198be;
                        uVar19 = var_12();
                        *(type_5 *)((int)var_72 + -0x14) = 0x198c5;
                        piVar21 = var_6();
                        *(char **)((int)var_72 + -0x14) = var_30;
                        *(type_5 *)(var_72 + -3) = uVar19;
                        *(int *)((int)var_72 + -0x1c) = *piVar21;
                        *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                        *(type_16 **)((int)var_72 + -0x24) = &UNK_000198d0;
                        var_13();
                      }
                    }
                    var_30 = local_1f8;
                    var_75 = var_74;
                    if ((local_1f0->preserve_ownership != false) &&
                       ((src_sb.st_uid != dst_back_sb.st_uid ||
                        (dst_back_sb.st_uid = dst_back_sb.st_gid,
                        src_sb.st_gid != dst_back_sb.st_gid)))) {
                      *(type_22 *)((int)var_72 + -4) = dst_back_sb.st_uid;
                      var_24 = (type_10)local_1f4 & 0xff;
                      *(type_15 **)(var_72 + -1) = local_240;
                      *(type_10 *)((int)var_72 + -0xc) = var_24;
                      *(type_2 **)(var_72 + -2) = &src_sb;
                      var_141 = local_1f0;
                      *(type_5 *)((int)var_72 + -0x14) = 0x17f33;
                      var_3 = var_138(var_141,var_30,(int)var_75,*(type_2 **)(var_72 + -2),
                                         *(type_1 *)((int)var_72 + -0xc),*(type_2 **)(var_72 + -1));
                      if (var_3 == -1) goto LAB_000197c4;
                      uVar19 = extraout_ECX_01;
                      if (var_3 == 0) {
                        var_139 = var_139 & 0xfffff1ff;
                      }
                    }
                    if (local_1f0->preserve_xattr == false) {
LAB_0001950b:
                      var_150 = 1;
                    }
                    else {
                      var_141 = local_1f0;
                      if ((dst_back_sb.st_mode & 0x80) == 0) {
                        *(type_5 *)((int)var_72 + -4) = 0x19e80;
                        var_141 = (type_4 *)var_140();
                        var_30 = local_1f8;
                        var_75 = var_74;
                        if (var_141 == (type_4 *)0x0) goto LAB_00017f67;
                        *(type_5 *)((int)var_72 + -4) = 0x19ea0;
                        var_3 = var_142((int)var_75,var_30,0x180);
                        var_154 = local_1f8;
                        p_Var7 = var_4;
                        var_24 = var_1((int3)((type_10)var_3 >> 8),var_3 == 0);
                        *(type_10 *)((int)var_72 + -4) = var_24;
                        *(type_10 *)(var_72 + -1) = var_24;
                        var_30 = local_200;
                        *(type_4 **)((int)var_72 + -0xc) = local_1f0;
                        *(type_3 **)(var_72 + -2) = var_75;
                        *(type_5 *)((int)var_72 + -0x14) = 0x19ec7;
                        var_150 = var_143(var_30,(int)p_Var7,var_154,(int)var_72[-2],
                                           *(type_4 **)((int)var_72 + -0xc));
                        uVar19 = extraout_ECX_12;
                        if (!(bool)var_150) goto LAB_00017f99;
                      }
                      else {
LAB_00017f67:
                        var_154 = local_1f8;
                        p_Var7 = var_4;
                        *(type_4 **)((int)var_72 + -4) = var_141;
                        *(type_4 **)(var_72 + -1) = var_141;
                        var_30 = local_200;
                        *(type_4 **)((int)var_72 + -0xc) = local_1f0;
                        *(type_3 **)(var_72 + -2) = var_74;
                        *(type_5 *)((int)var_72 + -0x14) = 0x17f8c;
                        var_83 = var_143(var_30,(int)p_Var7,var_154,(int)var_72[-2],
                                           *(type_4 **)((int)var_72 + -0xc));
                        var_24 = (type_10)var_83;
                        uVar19 = extraout_ECX_02;
                        if (var_83) goto LAB_0001950b;
LAB_00017f99:
                        local_20c = (type_2 *)var_1(local_20c._1_3_,
                                                     local_1f0->require_preserve_xattr);
                        var_150 = local_1f0->require_preserve_xattr ^ 1;
                      }
                      var_30 = local_1f8;
                      var_75 = var_74;
                      if ((char)var_24 != '\0') {
                        var_24 = ~var_145 & var_93;
                        *(type_5 *)((int)var_72 + -4) = 0x17fd3;
                        var_142((int)var_75,var_30,var_24);
                        uVar19 = extraout_ECX_03;
                      }
                    }
                    var_141 = local_1f0;
                    if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {
                      if (local_1f0->set_mode == false) {
                        var_144 = (type_9)local_1f4 & local_1f0->explicit_no_preserve_mode;
                        if (var_144 == 0) {
                          if (var_145 != 0) {
                            *(type_5 *)((int)var_72 + -4) = 0x1a00f;
                            mVar30 = var_146();
                            var_30 = local_1f8;
                            var_75 = var_74;
                            var_24 = var_93;
                            if ((var_145 & ~mVar30) != 0) {
                              *(type_5 *)((int)var_72 + -4) = 0x1a034;
                              var_3 = var_142((int)var_75,var_30,var_24);
                              if (var_3 != 0) {
                                *(int *)((int)var_72 + -4) = var_3;
                                *(int *)(var_72 + -1) = var_3;
                                *(char **)((int)var_72 + -0xc) = local_1f8;
                                *(type_5 *)(var_72 + -2) = 4;
                                *(type_5 *)((int)var_72 + -0x14) = 0x1a04b;
                                var_106 = (type_6 *)var_10(*(type_26 *)(var_72 + -2),
                                                                   *(char **)((int)var_72 + -0xc));
                                *(type_5 *)(var_72 + -1) = 5;
                                *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb027;
                                *(type_5 *)(var_72 + -2) = 0;
                                *(type_5 *)((int)var_72 + -0x14) = 0x1a064;
                                local_20c = (type_2 *)var_12();
                                *(type_5 *)((int)var_72 + -0x14) = 0x1a06f;
                                piVar21 = var_6();
                                psVar20 = local_20c;
                                *(type_6 **)((int)var_72 + -0x14) = var_106;
                                *(type_2 **)(var_72 + -3) = psVar20;
                                *(int *)((int)var_72 + -0x1c) = *piVar21;
                                *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                                *(type_16 **)((int)var_72 + -0x24) = &UNK_0001a086;
                                var_13();
                              }
                            }
                          }
                        }
                        else {
                          local_20c = (type_2 *)((type_10)local_20c & 0xffffff00);
                          *(type_5 *)((int)var_72 + -4) = 0x1a1d2;
                          mVar30 = var_146();
                          *(type_5 *)((int)var_72 + -4) = extraout_EDX_01;
                          *(type_14 *)(var_72 + -1) = ~mVar30 & 0x1b6;
                          *(type_3 **)((int)var_72 + -0xc) = var_74;
                          *(char **)(var_72 + -2) = local_1f8;
                          *(type_5 *)((int)var_72 + -0x14) = 0x1a1ec;
                          var_3 = var_147(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc),
                                           *(type_14 *)(var_72 + -1));
                          local_1f4 = (char *)var_1(local_1f4._1_3_,var_144);
                          if (var_3 != 0) {
                            var_150 = (type_9)local_20c;
                          }
                        }
                      }
                      else {
                        *(type_5 *)((int)var_72 + -4) = uVar19;
                        *(type_14 *)(var_72 + -1) = var_141->mode;
                        *(type_3 **)((int)var_72 + -0xc) = var_74;
                        *(char **)(var_72 + -2) = local_1f8;
                        *(type_5 *)((int)var_72 + -0x14) = 0x1a0e8;
                        var_3 = var_147(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc),
                                         *(type_14 *)(var_72 + -1));
                        if (var_3 != 0) {
                          var_150 = 0;
                        }
                      }
                    }
                    else {
                      *(type_10 *)(var_72 + -2) = var_139;
                      *(type_3 **)((int)var_72 + -0x14) = var_74;
                      *(char **)(var_72 + -3) = local_1f8;
                      *(type_1 **)((int)var_72 + -0x1c) = var_4;
                      *(char **)(var_72 + -4) = local_200;
                      *(type_5 *)((int)var_72 + -0x24) = 0x1961d;
                      var_3 = var_148(*(char **)(var_72 + -4),*(int *)((int)var_72 + -0x1c),
                                        *(char **)(var_72 + -3),*(int *)((int)var_72 + -0x14),
                                        *(type_14 *)(var_72 + -2));
                      if ((var_3 != 0) && (local_1f0->require_preserve != false)) {
                        var_150 = 0;
                      }
                    }
                    goto LAB_00018028;
                  }
                }
                else {
                  var_3 = 0x15;
                  if (*local_1f8 != '\0') {
                    var_24 = 0xffffffff;
                    var_30 = local_1f8;
                    do {
                      if (var_24 == 0) break;
                      var_24 = var_24 - 1;
                      var_28 = *var_30;
                      var_30 = var_30 + (type_10)var_144 * -2 + 1;
                    } while (var_28 != '\0');
                    var_3 = (local_1f8[~var_24 - 2] != '/') + 0x14;
                  }
                }
              }
              else {
                var_3 = 0x11;
                local_1f4 = (char *)var_1(local_1f4._1_3_,local_1f0->move_mode);
                if (local_1f0->move_mode == false) {
                  *(type_10 *)((int)var_72 + -4) = var_1((int3)((type_10)extraout_EDX >> 8),var_25);
                  *(type_2 **)(var_72 + -1) = &dst_back_sb;
                  *(char **)((int)var_72 + -0xc) = local_1f8;
                  *(type_5 *)(var_72 + -2) = 3;
                  *(type_5 *)((int)var_72 + -0x14) = 0x193f6;
                  var_9 = var_15((int)var_72[-2],*(char **)((int)var_72 + -0xc),
                                      *(type_15 **)(var_72 + -1));
                  if ((var_9 == 0) && ((dst_back_sb.st_mode & 0xf000) == 0xa000)) {
                    var_24 = (type_10)local_1f0->open_dangling_dest_symlink;
                    if (local_1f0->open_dangling_dest_symlink == false) {
                      *(type_10 *)((int)var_72 + -4) = var_24;
                      *(type_10 *)(var_72 + -1) = var_24;
                      *(char **)((int)var_72 + -0xc) = local_1f8;
                      *(type_5 *)(var_72 + -2) = 4;
                      *(type_5 *)((int)var_72 + -0x14) = 0x1a217;
                      var_30 = var_10(*(type_26 *)(var_72 + -2),
                                               *(char **)((int)var_72 + -0xc));
                      *(type_5 *)(var_72 + -1) = 5;
                      *(char **)((int)var_72 + -0xc) = "not writing through dangling symlink %s";
                      *(type_5 *)(var_72 + -2) = 0;
                      *(type_5 *)((int)var_72 + -0x14) = 0x1a22c;
                      uVar19 = var_12();
                      *(char **)((int)var_72 + -0x14) = var_30;
                      *(type_5 *)(var_72 + -3) = uVar19;
                      *(type_5 *)((int)var_72 + -0x1c) = 0;
                      *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                      *(type_16 **)((int)var_72 + -0x24) = &UNK_0001a237;
                      var_13();
                    }
                    *(type_10 *)((int)var_72 + -4) = var_24;
                    *(type_6 **)(var_72 + -1) = var_106;
                    *(type_5 *)((int)var_72 + -0xc) = 0x41;
                    *(char **)(var_72 + -2) = local_1f8;
                    *(type_5 *)((int)var_72 + -0x14) = 0x19434;
                    var_74 = (type_3 *)
                                var_91(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc));
                    var_3 = *(int *)var_84;
                  }
                  goto LAB_00019445;
                }
              }
LAB_00019116:
              *(char **)((int)var_72 + -0xc) = local_1f8;
              *(type_5 *)(var_72 + -2) = 4;
              *(type_5 *)((int)var_72 + -0x14) = 0x19126;
              var_30 = var_10(*(type_26 *)(var_72 + -2),
                                       *(char **)((int)var_72 + -0xc));
              *(type_5 *)(var_72 + -1) = 5;
              *(char **)((int)var_72 + -0xc) = "cannot create regular file %s";
              *(type_5 *)(var_72 + -2) = 0;
              *(type_5 *)((int)var_72 + -0x14) = 0x1913b;
              uVar19 = var_12();
              *(char **)((int)var_72 + -0x14) = var_30;
              *(type_5 *)(var_72 + -3) = uVar19;
              *(int *)((int)var_72 + -0x1c) = var_3;
LAB_00018b73:
              *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
              *(type_16 **)((int)var_72 + -0x24) = &UNK_00018b7c;
              var_13();
            }
            *(type_10 *)((int)var_72 + -0xc) =
                 (-(type_10)(local_1f0->data_copy_required == false) & 0xfffffe00) + 0x201;
            *(char **)(var_72 + -2) = local_1f8;
            *(type_5 *)((int)var_72 + -0x14) = 0x17c4d;
            var_74 = (type_3 *)
                        var_91(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc));
            pcVar10 = local_1f0;
            if ((var_141->set_security_context == false) &&
               (var_141->preserve_security_context == false)) {
              if (-1 < (int)var_74) goto LAB_00017c77;
LAB_0001926b:
              *(type_5 *)((int)var_72 + -4) = 0x19270;
              piVar21 = var_6();
              if (local_1f0->unlink_dest_after_failed_open == false) {
                var_3 = *piVar21;
                if ((var_3 == 2) && (local_1f0->move_mode == false)) {
                  var_145 = 0;
                  goto LAB_000190a0;
                }
                local_1f4 = (char *)((type_10)local_1f4 & 0xffffff00);
                goto LAB_00019116;
              }
              *(char **)(var_72 + -2) = local_1f8;
              *(type_5 *)((int)var_72 + -0x14) = 0x19290;
              var_3 = var_53(*(char **)(var_72 + -2));
              if (var_3 != 0) {
                *(type_4 **)((int)var_72 + -4) = var_141;
                *(type_4 **)(var_72 + -1) = var_141;
                *(char **)((int)var_72 + -0xc) = local_1f8;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x1a104;
                var_30 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                *(type_5 *)(var_72 + -1) = 5;
                *(char **)((int)var_72 + -0xc) = "cannot remove %s";
                *(type_5 *)(var_72 + -2) = 0;
                *(type_5 *)((int)var_72 + -0x14) = 0x1a119;
                uVar19 = var_12();
                *(char **)((int)var_72 + -0x14) = var_30;
                *(type_5 *)(var_72 + -3) = uVar19;
                *(int *)((int)var_72 + -0x1c) = *piVar21;
                goto LAB_00018b73;
              }
              if (local_1f0->verbose != false) {
                *(type_5 *)((int)var_72 + -4) = extraout_ECX_04;
                *(type_5 *)(var_72 + -1) = extraout_ECX_04;
                *(char **)((int)var_72 + -0xc) = local_1f8;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x1a0aa;
                var_30 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                *(type_5 *)(var_72 + -1) = 5;
                *(char **)((int)var_72 + -0xc) = "removed %s\n";
                *(type_5 *)(var_72 + -2) = 0;
                *(type_5 *)((int)var_72 + -0x14) = 0x1a0bf;
                uVar19 = var_12();
                *(char **)(var_72 + -1) = var_30;
                *(type_5 *)((int)var_72 + -0xc) = uVar19;
                *(type_5 *)(var_72 + -2) = 1;
                *(type_5 *)((int)var_72 + -0x14) = 0x1a0cb;
                var_54();
              }
              var_145 = var_41;
              local_1f4 = (char *)var_1(local_1f4._1_3_,local_1f0->set_security_context);
              if (local_1f0->set_security_context == false) goto LAB_000190a0;
              *(type_4 **)(var_72 + -2) = local_1f0;
              *(type_5 *)((int)var_72 + -0x14) = 1;
              *(type_10 *)(var_72 + -3) = var_93;
              *(char **)((int)var_72 + -0x1c) = local_1f8;
              *(char **)(var_72 + -4) = local_200;
              *(type_5 *)((int)var_72 + -0x24) = 0x192f1;
              var_150 = var_73
                                 (*(char **)(var_72 + -4),*(char **)((int)var_72 + -0x1c),
                                  *(type_14 *)(var_72 + -3),*(type_1 *)((int)var_72 + -0x14),
                                  *(type_4 **)(var_72 + -2));
              if ((bool)var_150) goto LAB_00019094;
              var_84 = (type_6 *)0x0;
            }
            else {
              if ((int)var_74 < 0) goto LAB_0001926b;
              var_83 = local_1f0->preserve_security_context;
              *(type_4 **)((int)var_72 + -4) = local_1f0;
              *(type_5 *)(var_72 + -1) = 0;
              *(type_10 *)((int)var_72 + -0xc) = (type_10)var_83;
              *(char **)(var_72 + -2) = local_1f8;
              *(type_5 *)((int)var_72 + -0x14) = 0x1952e;
              var_150 = var_68
                                 (*(char **)(var_72 + -2),*(type_1 *)((int)var_72 + -0xc),
                                  var_76(var_72[-1],0),*(type_4 **)((int)var_72 + -4));
              if ((bool)var_150) {
LAB_00017c77:
                var_145 = 0;
                goto LAB_00017c81;
              }
              local_1f4 = (char *)var_1(local_1f4._1_3_,pcVar10->require_preserve_context);
              if (pcVar10->require_preserve_context == false) goto LAB_00017c77;
              local_1f4 = (char *)((type_10)local_1f4._1_3_ << 8);
              var_84 = (type_6 *)0x0;
LAB_00018028:
              *(type_3 **)(var_72 + -2) = var_74;
              *(type_5 *)((int)var_72 + -0x14) = 0x18036;
              var_3 = var_149((int)var_72[-2]);
              if (var_3 < 0) {
                *(int *)((int)var_72 + -4) = var_3;
                *(int *)(var_72 + -1) = var_3;
                *(char **)((int)var_72 + -0xc) = local_1f8;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x1964e;
                var_30 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                *(type_5 *)(var_72 + -1) = 5;
                *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb009;
                *(type_5 *)(var_72 + -2) = 0;
                *(type_5 *)((int)var_72 + -0x14) = 0x19663;
                uVar19 = var_12();
                *(type_5 *)((int)var_72 + -0x14) = 0x1966a;
                piVar21 = var_6();
                *(char **)((int)var_72 + -0x14) = var_30;
                *(type_5 *)(var_72 + -3) = uVar19;
                *(int *)((int)var_72 + -0x1c) = *piVar21;
                *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                *(type_16 **)((int)var_72 + -0x24) = &UNK_00019677;
                var_13();
              }
            }
            *(type_1 **)(var_72 + -2) = var_4;
            *(type_5 *)((int)var_72 + -0x14) = 0x18056;
            var_3 = var_149((int)var_72[-2]);
            if (var_3 < 0) {
              *(char **)((int)var_72 + -0xc) = local_200;
              *(type_5 *)(var_72 + -2) = 4;
              *(type_5 *)((int)var_72 + -0x14) = 0x18e7e;
              var_30 = var_10(*(type_26 *)(var_72 + -2),
                                       *(char **)((int)var_72 + -0xc));
              *(type_5 *)(var_72 + -1) = 5;
              *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb009;
              *(type_5 *)(var_72 + -2) = 0;
              *(type_5 *)((int)var_72 + -0x14) = 0x18e93;
              uVar19 = var_12();
              *(type_5 *)((int)var_72 + -0x14) = 0x18e9a;
              piVar21 = var_6();
              *(char **)((int)var_72 + -0x14) = var_30;
              *(type_5 *)(var_72 + -3) = uVar19;
              *(int *)((int)var_72 + -0x1c) = *piVar21;
              *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
              *(type_16 **)((int)var_72 + -0x24) = &UNK_00018ea5;
              var_13();
            }
            *(type_6 **)(var_72 + -2) = var_84;
            *(type_5 *)((int)var_72 + -0x14) = 0x1806f;
            var_31(*(void **)(var_72 + -2));
            var_4 = (type_1 *)((type_10)var_4 & 0xffffff00);
            if (var_150 == 0) goto LAB_00016fad;
          }
          else {
            var_150 = 0;
            if (var_90 == (type_15 *)0x1000) {
              dst_back_sb.st_dev._0_4_ = (type_2 *)0x0;
              dst_back_sb.st_dev._4_4_ = 0;
              var_24 = ~var_41 & var_17;
              *(type_2 **)((int)var_72 + -4) = &dst_back_sb;
              *(type_10 *)(var_72 + -1) = var_24;
              *(char **)((int)var_72 + -0xc) = local_1f8;
              *(type_5 *)(var_72 + -2) = 1;
              *(type_5 *)((int)var_72 + -0x14) = 0x18dbe;
              var_3 = var_151((int)var_72[-2],*(char **)((int)var_72 + -0xc),
                                *(type_8 *)(var_72 + -1),*(type_34 **)((int)var_72 + -4));
              var_4 = (type_1 *)((type_10)var_4 & 0xffffff00);
              if (var_3 != 0) {
                *(type_10 *)((int)var_72 + -0xc) = var_24 & 0xffffefff;
                *(char **)(var_72 + -2) = local_1f8;
                *(type_5 *)((int)var_72 + -0x14) = 0x18de5;
                var_3 = var_152(*(char **)(var_72 + -2),*(type_8 *)((int)var_72 + -0xc));
                var_4 = (type_1 *)((type_10)var_4 & 0xffffff00);
                if (var_3 != 0) {
                  *(int *)((int)var_72 + -4) = var_3;
                  *(int *)(var_72 + -1) = var_3;
                  *(char **)((int)var_72 + -0xc) = local_1f8;
                  *(type_5 *)(var_72 + -2) = 4;
                  *(type_5 *)((int)var_72 + -0x14) = 0x18e07;
                  var_154 = var_10(*(type_26 *)(var_72 + -2),
                                           *(char **)((int)var_72 + -0xc));
                  poVar41 = var_72 + -1;
                  *(type_5 *)(var_72 + -1) = 5;
                  var_30 = "cannot create fifo %s";
                  goto LAB_00016f90;
                }
              }
            }
            else if (((type_10)var_90 & 0xffffbfff) == 0x2000 || var_90 == (type_15 *)0xc000) {
              dst_back_sb.st_dev._0_4_ = (type_2 *)src_sb.st_rdev;
              *(type_2 **)((int)var_72 + -4) = &dst_back_sb;
              dst_back_sb.st_dev._4_4_ = src_sb.st_rdev._4_4_;
              *(type_10 *)(var_72 + -1) = ~var_41 & var_17;
              *(char **)((int)var_72 + -0xc) = local_1f8;
              *(type_5 *)(var_72 + -2) = 1;
              *(type_5 *)((int)var_72 + -0x14) = 0x16f59;
              var_3 = var_151((int)var_72[-2],*(char **)((int)var_72 + -0xc),
                                *(type_8 *)(var_72 + -1),*(type_34 **)((int)var_72 + -4));
              var_4 = (type_1 *)((type_10)var_4 & 0xffffff00);
              if (var_3 != 0) {
                *(char **)((int)var_72 + -0xc) = local_1f8;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x16f7c;
                var_154 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                poVar41 = var_72 + -1;
                *(type_5 *)(var_72 + -1) = 5;
                var_30 = "cannot create special file %s";
                goto LAB_00016f90;
              }
            }
            else {
              if (var_90 != (type_15 *)0xa000) {
                *(char **)((int)var_72 + -0xc) = local_200;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x18e30;
                var_154 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                *(type_5 *)(var_72 + -1) = 5;
                var_30 = "%s has unknown file type";
                goto LAB_00016e8b;
              }
              *(type_5 *)((int)var_72 + -0xc) = (type_5)src_sb.st_size;
              *(char **)(var_72 + -2) = local_200;
              *(type_5 *)((int)var_72 + -0x14) = 0x18a38;
              var_30 = var_153(*(char **)(var_72 + -2),
                                            *(size_t *)((int)var_72 + -0xc));
              if (var_30 == (char *)0x0) {
                *(type_5 *)((int)var_72 + -4) = 0;
                *(type_5 *)(var_72 + -1) = 0;
                *(char **)((int)var_72 + -0xc) = local_200;
                *(type_5 *)(var_72 + -2) = 4;
                *(type_5 *)((int)var_72 + -0x14) = 0x194d0;
                var_154 = var_10(*(type_26 *)(var_72 + -2),
                                         *(char **)((int)var_72 + -0xc));
                poVar41 = var_72 + -1;
                *(type_5 *)(var_72 + -1) = 5;
                var_30 = "cannot read symbolic link %s";
                goto LAB_00016f90;
              }
              *(type_10 *)((int)var_72 + -4) = (type_10)local_1f0->unlink_dest_after_failed_open;
              *(char **)(var_72 + -1) = local_1f8;
              *(type_5 *)((int)var_72 + -0xc) = 0xffffff9c;
              *(char **)(var_72 + -2) = var_30;
              *(type_5 *)((int)var_72 + -0x14) = 0x18a5e;
              var_3 = var_88(*(char **)(var_72 + -2),*(int *)((int)var_72 + -0xc),
                                       *(char **)(var_72 + -1),*(type_1 *)((int)var_72 + -4));
              if (var_3 < 0) {
                *(type_5 *)((int)var_72 + -4) = 0x19315;
                piVar21 = var_6();
                var_4 = (type_1 *)*piVar21;
                if ((type_1 *)*piVar21 == (type_1 *)0x0) goto LAB_00018a69;
                if (((local_1f0->update != true) || ((type_9)local_1f4 != '\0')) ||
                   ((dst_sb.st_mode & 0xf000) != 0xa000)) {
LAB_0001933e:
                  *(char **)(var_72 + -2) = var_30;
                  *(type_5 *)((int)var_72 + -0x14) = 0x19347;
                  var_31(*(void **)(var_72 + -2));
                  *(char **)((int)var_72 + -0xc) = local_1f8;
                  *(type_5 *)(var_72 + -2) = 4;
                  *(type_5 *)((int)var_72 + -0x14) = 0x19356;
                  var_30 = var_10(*(type_26 *)(var_72 + -2),
                                           *(char **)((int)var_72 + -0xc));
                  *(type_5 *)(var_72 + -1) = 5;
                  *(char **)((int)var_72 + -0xc) = "cannot create symbolic link %s";
                  *(type_5 *)(var_72 + -2) = 0;
                  *(type_5 *)((int)var_72 + -0x14) = 0x1936b;
                  uVar19 = var_12();
                  *(char **)((int)var_72 + -0x14) = var_30;
                  *(type_5 *)(var_72 + -3) = uVar19;
                  *(type_1 **)((int)var_72 + -0x1c) = var_4;
                  *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                  *(type_16 **)((int)var_72 + -0x24) = &UNK_0001937a;
                  var_13();
                }
                var_24 = 0xffffffff;
                var_154 = var_30;
                do {
                  if (var_24 == 0) break;
                  var_24 = var_24 - 1;
                  var_28 = *var_154;
                  var_154 = var_154 + (type_10)var_144 * -2 + 1;
                } while (var_28 != '\0');
                var_3 = ~var_24 - 1;
                if ((dst_sb.st_size._4_4_ != 0) || ((int)dst_sb.st_size != var_3))
                goto LAB_0001933e;
                *(int *)((int)var_72 + -4) = var_3;
                *(int *)(var_72 + -1) = var_3;
                *(int *)((int)var_72 + -0xc) = (int)dst_sb.st_size;
                *(char **)(var_72 + -2) = local_1f8;
                *(type_5 *)((int)var_72 + -0x14) = 0x19e2b;
                var_154 = var_153(*(char **)(var_72 + -2),
                                              *(size_t *)((int)var_72 + -0xc));
                if (var_154 == (char *)0x0) goto LAB_0001933e;
                *(char **)((int)var_72 + -4) = var_154;
                *(char **)(var_72 + -1) = var_154;
                *(char **)((int)var_72 + -0xc) = var_30;
                *(char **)(var_72 + -2) = var_154;
                *(type_5 *)((int)var_72 + -0x14) = 0x19e41;
                var_3 = var_44(*(char **)(var_72 + -2),*(char **)((int)var_72 + -0xc));
                if (var_3 != 0) {
                  *(char **)(var_72 + -2) = var_154;
                  *(type_5 *)((int)var_72 + -0x14) = 0x1a12b;
                  var_31(*(void **)(var_72 + -2));
                  goto LAB_0001933e;
                }
                *(char **)(var_72 + -2) = var_154;
                *(type_5 *)((int)var_72 + -0x14) = 0x19e55;
                var_31(*(void **)(var_72 + -2));
                *(char **)(var_72 + -2) = var_30;
                *(type_5 *)((int)var_72 + -0x14) = 0x19e5d;
                var_31(*(void **)(var_72 + -2));
              }
              else {
LAB_00018a69:
                *(char **)(var_72 + -2) = var_30;
                *(type_5 *)((int)var_72 + -0x14) = 0x18a72;
                var_31(*(void **)(var_72 + -2));
              }
              if (local_1f0->preserve_security_context != false) {
                *(type_5 *)((int)var_72 + -4) = 0x193dc;
                var_63();
              }
              var_4 = (type_1 *)var_1(var_4._1_3_,1);
              var_83 = local_1f0->preserve_ownership;
              var_150 = var_83;
              if (var_83 != false) {
                *(type_35 *)(var_72 + -1) = src_sb.st_gid;
                *(type_22 *)((int)var_72 + -0xc) = src_sb.st_uid;
                *(char **)(var_72 + -2) = local_1f8;
                *(type_5 *)((int)var_72 + -0x14) = 0x18aba;
                var_3 = var_155(*(char **)(var_72 + -2),*(type_22 *)((int)var_72 + -0xc),
                                *(type_35 *)(var_72 + -1));
                if (var_3 == 0) {
                  var_150 = 0;
                  var_4 = (type_1 *)var_1(var_4._1_3_,var_83);
                }
                else {
                  *(type_4 **)(var_72 + -2) = local_1f0;
                  *(type_5 *)((int)var_72 + -0x14) = 0x18ad3;
                  var_83 = var_156(*(type_4 **)(var_72 + -2));
                  var_4 = (type_1 *)var_1(var_4._1_3_,var_83);
                  if (!var_83) {
                    *(char **)((int)var_72 + -4) = var_30;
                    *(type_5 *)(var_72 + -1) = 5;
                    *(char **)((int)var_72 + -0xc) = "failed to preserve ownership for %s";
                    *(type_5 *)(var_72 + -2) = 0;
                    *(type_5 *)((int)var_72 + -0x14) = 0x19574;
                    uVar19 = var_12();
                    *(type_5 *)((int)var_72 + -0x14) = 0x1957b;
                    piVar21 = var_6();
                    *(char **)((int)var_72 + -0x14) = local_1f8;
                    *(type_5 *)(var_72 + -3) = uVar19;
                    *(int *)((int)var_72 + -0x1c) = *piVar21;
                    *(type_5 *)(var_72 + -4) = 0;
                    /* WARNING: Subroutine does not return */
                    *(type_16 **)((int)var_72 + -0x24) = &UNK_0001958b;
                    var_13();
                  }
                  var_150 = 0;
                }
              }
            }
          }
LAB_000166da:
          var_144 = var_90 != (type_15 *)0x4000;
          if ((type_9)local_1f4 == '\0') {
            local_20c = (type_2 *)var_1(local_20c._1_3_,local_1f0->copy_as_regular);
            var_83 = (type_1)((local_1f0->copy_as_regular ^ 1U) & var_144);
            if (var_83 != false) {
              var_157 = local_1f0->preserve_security_context;
              if ((local_1f0->set_security_context != false) || (var_144 = var_83, var_157 != false)) {
                *(type_4 **)((int)var_72 + -4) = local_1f0;
                *(type_5 *)(var_72 + -1) = 0;
                *(type_10 *)((int)var_72 + -0xc) = (type_10)var_157;
                *(char **)(var_72 + -2) = local_1f8;
                *(type_5 *)((int)var_72 + -0x14) = 0x177d2;
                var_144 = var_68
                                   (*(char **)(var_72 + -2),*(type_1 *)((int)var_72 + -0xc),
                                    var_76(var_72[-1],0),*(type_4 **)((int)var_72 + -4));
                if (!(bool)var_144) {
                  local_1f4 = (char *)var_1(local_1f4._1_3_,local_1f0->require_preserve_context);
                  var_144 = var_83;
                  if (local_1f0->require_preserve_context != false) goto LAB_00016fad;
                }
              }
            }
          }
          var_25 = 1;
          if ((type_9)var_23 != '\0') {
            var_77 = var_77 & 0xffffff00;
            goto LAB_00016722;
          }
LAB_00016794:
          if (((local_1f0->hard_link != false) && (var_144 != 0)) || (var_150 != 0))
          goto LAB_0001614a;
        }
        if (local_1f0->preserve_timestamps == false) {
LAB_00016870:
          if ((char)var_4 == '\0') goto LAB_0001687d;
          if (local_1f0->preserve_xattr == false) goto LAB_0001614a;
          *(type_4 **)((int)var_72 + -0xc) = local_1f0;
          var_154 = local_1f8;
          var_30 = local_200;
          *(type_5 *)((int)var_72 + -0x10) = 0xffffffff;
          *(type_5 *)((int)var_72 + -0x14) = 0x17511;
          var_83 = var_143(var_30,-1,var_154,*(int *)((int)var_72 + -0x10),
                             *(type_4 **)((int)var_72 + -0xc));
          if (var_83) goto LAB_0001614a;
          var_28 = local_1f0->require_preserve_xattr;
        }
        else {
          type_23[0].tv_sec = src_sb.st_atim.tv_sec;
          type_23[0].tv_nsec = src_sb.st_atim.tv_nsec;
          type_23[1].tv_sec = src_sb.st_mtim.tv_sec;
          type_23[1].tv_nsec = src_sb.st_mtim.tv_nsec;
          if ((char)var_4 != '\0') {
            *(type_23 **)((int)var_72 + -0xc) = type_23;
            *(char **)((int)var_72 + -0x10) = local_1f8;
            *(type_5 *)((int)var_72 + -0x14) = 0x16805;
            var_3 = var_158(*(char **)((int)var_72 + -0x10),*(type_23 **)((int)var_72 + -0xc));
            if (var_3 != 0) {
              *(type_5 *)((int)var_72 + -4) = 0x16811;
              piVar21 = var_6();
              if (*piVar21 != 0x26) goto LAB_00016816;
            }
            goto LAB_00016870;
          }
          *(type_23 **)((int)var_72 + -0xc) = type_23;
          *(char **)((int)var_72 + -0x10) = local_1f8;
          *(type_5 *)((int)var_72 + -0x14) = 0x18652;
          var_3 = var_159(*(char **)((int)var_72 + -0x10),*(type_23 **)((int)var_72 + -0xc));
          if (var_3 != 0) {
LAB_00016816:
            *(char **)((int)var_72 + -0xc) = local_1f8;
            *(type_5 *)((int)var_72 + -0x10) = 4;
            *(type_5 *)((int)var_72 + -0x14) = 0x16826;
            var_30 = var_10(*(type_26 *)((int)var_72 + -0x10),
                                     *(char **)((int)var_72 + -0xc));
            *(type_5 *)((int)var_72 + -8) = 5;
            *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb03f;
            *(type_5 *)((int)var_72 + -0x10) = 0;
            *(type_5 *)((int)var_72 + -0x14) = 0x1683b;
            var_23 = var_12();
            *(type_5 *)((int)var_72 + -0x14) = 0x16846;
            piVar21 = var_6();
            var_24 = var_23;
            *(char **)((int)var_72 + -0x14) = var_30;
            *(type_10 *)((int)var_72 + -0x18) = var_24;
            *(int *)((int)var_72 + -0x1c) = *piVar21;
            *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
            *(type_16 **)((int)var_72 + -0x24) = &UNK_00016857;
            var_13();
          }
LAB_0001687d:
          var_30 = local_1f8;
          if ((local_1f0->preserve_ownership != false) &&
             ((((type_9)local_1f4 != '\0' || (src_sb.st_uid != dst_sb.st_uid)) ||
              (src_sb.st_gid != dst_sb.st_gid)))) {
            *(type_2 **)((int)var_72 + -8) = &dst_sb;
            *(type_10 *)((int)var_72 + -0xc) = (type_10)local_1f4 & 0xff;
            *(type_2 **)((int)var_72 + -0x10) = &src_sb;
            var_141 = local_1f0;
            *(type_5 *)((int)var_72 + -0x14) = 0x168d3;
            var_3 = var_138(var_141,var_30,-1,*(type_2 **)((int)var_72 + -0x10),
                               *(type_1 *)((int)var_72 + -0xc),*(type_2 **)((int)var_72 + -8));
            if (var_3 == -1) goto LAB_00016148;
            if (var_3 == 0) {
              var_17 = var_17 & 0xfffff1ff;
            }
          }
          if (local_1f0->preserve_xattr != false) {
            *(type_4 **)((int)var_72 + -0xc) = local_1f0;
            var_154 = local_1f8;
            var_30 = local_200;
            *(type_5 *)((int)var_72 + -0x10) = 0xffffffff;
            *(type_5 *)((int)var_72 + -0x14) = 0x18c76;
            var_83 = var_143(var_30,-1,var_154,*(int *)((int)var_72 + -0x10),
                               *(type_4 **)((int)var_72 + -0xc));
            if ((!var_83) && (local_1f0->require_preserve_xattr != false)) goto LAB_00016148;
          }
          if ((local_1f0->preserve_mode == false) && (local_1f0->move_mode == false)) {
            if (local_1f0->set_mode == false) {
              if ((local_1f0->explicit_no_preserve_mode & (type_9)local_1f4) == 0) {
                if (var_41 == 0) {
LAB_0001694e:
                  if ((type_9)local_224 == '\0') goto LAB_0001614a;
                }
                else {
                  *(type_5 *)((int)var_72 + -4) = 0x191ba;
                  mVar30 = var_146();
                  var_41 = var_41 & ~mVar30;
                  if (var_41 == 0) goto LAB_0001694e;
                  if ((type_9)local_224 != '\x01') {
                    if ((type_9)local_1f4 != '\0') {
                      *(type_14 *)((int)var_72 + -4) = ~mVar30;
                      *(type_2 **)((int)var_72 + -8) = &dst_sb;
                      *(char **)((int)var_72 + -0xc) = local_1f8;
                      *(type_5 *)((int)var_72 + -0x10) = 3;
                      *(type_5 *)((int)var_72 + -0x14) = 0x19977;
                      var_3 = var_15(*(int *)((int)var_72 + -0x10),
                                          *(char **)((int)var_72 + -0xc),
                                          *(type_15 **)((int)var_72 + -8));
                      if (var_3 != 0) {
                        *(int *)((int)var_72 + -4) = var_3;
                        *(int *)((int)var_72 + -8) = var_3;
                        var_11 = (type_5 *)((int)var_72 + -0xc);
                        *(char **)((int)var_72 + -0xc) = local_1f8;
                        goto LAB_0001620e;
                      }
                    }
                    var_160 = dst_sb.st_mode;
                    if ((var_41 & ~dst_sb.st_mode) == 0) goto LAB_0001614a;
                  }
                }
                *(type_10 *)((int)var_72 + -0xc) = var_160 | var_41;
                *(char **)((int)var_72 + -0x10) = local_1f8;
                *(type_5 *)((int)var_72 + -0x14) = 0x16976;
                var_3 = var_79(*(char **)((int)var_72 + -0x10),*(type_8 *)((int)var_72 + -0xc));
                if (var_3 != 0) {
                  *(int *)((int)var_72 + -4) = var_3;
                  *(int *)((int)var_72 + -8) = var_3;
                  *(char **)((int)var_72 + -0xc) = local_1f8;
                  *(type_5 *)((int)var_72 + -0x10) = 4;
                  *(type_5 *)((int)var_72 + -0x14) = 0x16990;
                  var_154 = var_10(*(type_26 *)((int)var_72 + -0x10),
                                           *(char **)((int)var_72 + -0xc));
                  *(type_5 *)((int)var_72 + -8) = 5;
                  *(int *)((int)var_72 + -0xc) = (int)var_70 + -0xb027;
                  *(type_5 *)((int)var_72 + -0x10) = 0;
                  *(type_5 *)((int)var_72 + -0x14) = 0x169a5;
                  local_1f4 = (char *)var_12();
                  *(type_5 *)((int)var_72 + -0x14) = 0x169b0;
                  piVar21 = var_6();
                  var_30 = local_1f4;
                  *(char **)((int)var_72 + -0x14) = var_154;
                  *(char **)((int)var_72 + -0x18) = var_30;
                  *(int *)((int)var_72 + -0x1c) = *piVar21;
                  *(type_5 *)((int)var_72 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                  *(type_16 **)((int)var_72 + -0x24) = &UNK_000169c1;
                  var_13();
                }
                goto LAB_0001614a;
              }
              var_24 = 0x1b6;
              if ((var_17 & 0x7000) == 0x4000) {
                var_24 = 0x1ff;
              }
              *(type_5 *)((int)var_72 + -4) = 0x191a8;
              mVar30 = var_146();
              *(type_14 *)((int)var_72 + -8) = ~mVar30 & var_24;
            }
            else {
              *(type_14 *)((int)var_72 + -8) = local_1f0->mode;
            }
            *(type_5 *)((int)var_72 + -0xc) = 0xffffffff;
            *(char **)((int)var_72 + -0x10) = local_1f8;
            *(type_5 *)((int)var_72 + -0x14) = 0x18ece;
            var_3 = var_147(*(char **)((int)var_72 + -0x10),*(int *)((int)var_72 + -0xc),
                             *(type_14 *)((int)var_72 + -8));
            if (var_3 == 0) goto LAB_0001614a;
            goto LAB_00016148;
          }
          *(type_10 *)((int)var_72 + -0x10) = var_17;
          *(type_5 *)((int)var_72 + -0x14) = 0xffffffff;
          *(char **)((int)var_72 + -0x18) = local_1f8;
          *(type_5 *)((int)var_72 + -0x1c) = 0xffffffff;
          *(char **)((int)var_72 + -0x20) = local_200;
          *(type_5 *)((int)var_72 + -0x24) = 0x183b6;
          var_3 = var_148(*(char **)((int)var_72 + -0x20),*(int *)((int)var_72 + -0x1c),
                            *(char **)((int)var_72 + -0x18),*(int *)((int)var_72 + -0x14),
                            *(type_14 *)((int)var_72 + -0x10));
          if (var_3 == 0) goto LAB_0001614a;
          var_28 = local_1f0->require_preserve;
        }
        if (var_28 == '\0') goto LAB_0001614a;
      }
    }
  }
LAB_00016148:
  var_25 = 0;
LAB_0001614a:
  if (var_161 == *(int *)(var_2 + 0x14)) {
    return (type_1)var_25;
  }
                    /* WARNING: Subroutine does not return */
  *(type_5 *)((int)var_72 + -4) = 0x19855;
  var_162();
}


(translation_unit (function_definition type: (type_identifier) (ERROR (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) 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: (identifier)) (declaration type: (type_identifier) 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: (type_identifier) 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: (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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) 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: (identifier)) (declaration type: (type_identifier) 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: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) 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: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (cast_expression type: (type_descriptor type: (type_identifier) 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: (field_expression argument: (identifier) field: (field_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))) right: (binary_expression left: (identifier) right: (char_literal (escape_sequence)))))))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (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: (subscript_expression argument: (identifier) index: (number_literal)) 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)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))))))) 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))) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal))))) right: (binary_expression left: (pointer_expression argument: (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))) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))))) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal) (identifier) (pointer_expression argument: (identifier)) (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: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (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))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier)))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (true))) (expression_statement (assignment_expression left: (identifier) right: (true))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (identifier)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))) right: (binary_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))))))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))))))))) consequence: (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier))))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (false))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (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: (char_literal (escape_sequence)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal)))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier)))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal)))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (identifier)) right: (parenthesized_expression (binary_expression left: (number_literal) right: (field_expression argument: (identifier) field: (field_identifier)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (number_literal) right: (field_expression argument: (identifier) field: (field_identifier)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (goto_statement label: (statement_identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal))) right: (number_literal)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (identifier)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) right: (parenthesized_expression (unary_expression argument: (identifier))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (char_literal (escape_sequence))))))))))) consequence: (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_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))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list)))))) (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: (false))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) right: (number_literal))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (character)))) right: (number_literal))) right: (char_literal (character)))))) consequence: (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (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: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)) (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_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 (identifier) (identifier) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (pointer_expression argument: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal) (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: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (identifier)) (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (identifier)) right: (identifier))))) (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: (pointer_expression argument: (identifier)) right: (identifier))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (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: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal) (identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (goto_statement label: (statement_identifier)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list)))))) (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: (true))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal)) right: (identifier))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))) right: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))))))))) consequence: (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))) 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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))) right: (binary_expression left: (identifier) right: (char_literal (escape_sequence)))))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))) right: (binary_expression left: (identifier) right: (char_literal (escape_sequence)))))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (char_literal (escape_sequence)))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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))) value: (call_expression function: (identifier) arguments: (argument_list)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) 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))) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) 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: (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (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)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (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 (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (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))) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) 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))) value: (number_literal))) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) 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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (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: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) 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: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (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: (pointer_expression argument: (identifier)))))) condition: (parenthesized_expression (binary_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))))))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (unary_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (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: (field_expression argument: (identifier) field: (field_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content) (escape_sequence)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (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: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (field_expression argument: (identifier) field: (field_identifier))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (for_statement initializer: (assignment_expression left: (identifier) right: (number_literal)) condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_identifier))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (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 (field_expression argument: (identifier) field: (field_identifier)) (number_literal))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (break_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 (field_expression argument: (identifier) field: (field_identifier)) (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (subscript_expression argument: (identifier) index: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (identifier)) right: (field_expression argument: (identifier) field: (field_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) 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)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (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: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))))) right: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)))))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (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))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))) right: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (identifier))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (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: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (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: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (field_expression argument: (identifier) field: (field_identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier)))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (parenthesized_expression (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier))))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (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)) value: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (identifier))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (identifier))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (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)) value: (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)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (break_statement))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))))) right: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)) (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) 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: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (field_expression argument: (identifier) field: (field_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)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (true))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)) (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (false))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))) right: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier)))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (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: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (unary_expression argument: (identifier)))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (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 (field_expression argument: (identifier) field: (field_identifier)) (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)) value: (identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (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: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (unary_expression argument: (identifier)) right: (number_literal))) right: (char_literal (character)))) right: (number_literal)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (call_expression function: (identifier) arguments: (argument_list (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))))) (goto_statement label: (statement_identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (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: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content) (escape_sequence)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) 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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (unary_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)) 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: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (unary_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (unary_expression argument: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (field_expression argument: (identifier) field: (field_identifier)) field: (field_identifier)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))) right: (identifier))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (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)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))))))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence))) right: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier)))))) right: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (field_expression argument: (identifier) field: (field_identifier))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (goto_statement label: (statement_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (unary_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (unary_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (unary_expression argument: (field_expression argument: (identifier) field: (field_identifier))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (unary_expression argument: (identifier)) right: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Type propagation algorithm not settling */

uint __regparm3
MASKED(char *param_1,char *param_2,undefined1 param_3,__ino_t *param_4,int *param_5,
            int *param_6,uint param_7,code *param_8,byte *param_9,undefined1 *param_10)

{
  code cVar1;
  byte bVar2;
  bool bVar3;
  bool bVar4;
  __mode_t _Var5;
  char cVar6;
  byte bVar7;
  int iVar8;
  uint uVar9;
  int iVar10;
  undefined4 uVar11;
  undefined4 uVar12;
  byte *pbVar13;
  int *piVar14;
  undefined4 uVar15;
  size_t sVar16;
  byte **ppbVar17;
  char *pcVar18;
  code *pcVar19;
  char *pcVar20;
  uint uVar21;
  uint uVar22;
  int *piVar23;
  code *pcVar24;
  undefined4 extraout_ECX;
  undefined4 extraout_ECX_00;
  undefined4 extraout_ECX_01;
  undefined4 extraout_ECX_02;
  undefined4 extraout_ECX_03;
  undefined4 extraout_ECX_04;
  undefined4 extraout_ECX_05;
  undefined4 extraout_ECX_06;
  undefined4 extraout_ECX_07;
  undefined4 extraout_ECX_08;
  undefined4 extraout_ECX_09;
  undefined4 extraout_ECX_10;
  undefined4 extraout_ECX_11;
  undefined4 extraout_ECX_12;
  undefined4 extraout_ECX_13;
  undefined4 extraout_ECX_14;
  byte bVar25;
  stat64 *psVar26;
  undefined4 extraout_EDX;
  undefined4 extraout_EDX_00;
  int iVar27;
  undefined **ppuVar28;
  undefined1 *puVar29;
  undefined1 *puVar30;
  undefined1 *puVar31;
  undefined1 *puVar32;
  undefined1 *puVar33;
  undefined1 *puVar34;
  byte *pbVar35;
  byte *pbVar36;
  undefined4 *puVar37;
  int in_GS_OFFSET;
  undefined1 uVar38;
  undefined1 uVar39;
  byte bVar40;
  __off64_t _Var41;
  undefined8 uVar42;
  undefined1 auStack_28c [7];
  char local_285;
  uint local_284;
  undefined **local_280;
  int local_27c;
  uint local_278;
  int local_274;
  uint local_270;
  code *local_26c;
  int local_268;
  uint local_264;
  int local_260;
  code *local_25c;
  code *local_258;
  code *local_254;
  int local_250;
  uint local_24c;
  int local_248;
  uint local_244;
  stat64 *local_240;
  uint local_23c;
  stat64 *local_238;
  stat64 *local_234;
  char *local_230;
  __ino_t *local_22c;
  int *local_228;
  __ino_t local_224;
  code *local_220;
  code *local_21c;
  int local_218;
  byte **local_214;
  __ino_t local_210;
  byte *local_20c;
  undefined1 *local_208;
  uint local_204;
  char *local_200;
  uint local_1fc;
  char *local_1f8;
  char *local_1f4;
  int *local_1f0;
  undefined1 local_1dd;
  uint local_1dc;
  int local_1d8;
  __ino_t local_1d4;
  undefined4 local_1d0;
  stat64 *local_1c4;
  char local_1c0;
  char local_1bf;
  int local_1bc;
  undefined1 local_1b4 [36];
  __ino_t local_190;
  undefined4 local_188;
  __time_t local_174;
  long local_170;
  __time_t local_16c;
  long local_168;
  int local_15c;
  uint local_158;
  stat64 local_154;
  undefined1 local_f4 [48];
  int local_c4;
  int local_c0;
  uint local_bc;
  int local_b8;
  int local_9c;
  uint local_98;
  stat64 local_94;
  __time_t local_30;
  long local_2c;
  __time_t local_28;
  long local_24;
  int local_20;
  undefined4 uStack_14;
  
  bVar40 = 0;
  uStack_14 = 0x15deb;
  ppuVar28 = &__DT_PLTGOT;
  local_200 = param_1;
  local_1f8 = param_2;
  local_22c = param_4;
  local_220 = (code *)param_9;
  local_21c = param_8;
  local_228 = param_5;
  local_208 = param_10;
  local_1f0 = param_6;
  local_1fc = param_7;
  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,param_3);
  local_224 = CONCAT31(local_224._1_3_,(char)param_7);
  local_20 = *(int *)(in_GS_OFFSET + 0x14);
  *param_9 = 0;
  iVar10 = param_6[0xd];
  if ((char)param_6[6] != '\0') {
    if (-1 < iVar10) {
LAB_00015e6f:
      local_1f4 = (char *)CONCAT31(local_1f4._1_3_,iVar10 == 0);
      if (local_208 != (undefined1 *)0x0) {
        *local_208 = iVar10 == 0;
      }
      goto LAB_00015e8b;
    }
    local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)param_6[6]);
    iVar10 = FUN_000209f0(0xffffff9c,param_1,0xffffff9c);
    if (iVar10 != 0) {
      piVar14 = __errno_location();
      iVar10 = *piVar14;
      goto LAB_00015e6f;
    }
    if (local_208 != (undefined1 *)0x0) {
      *local_208 = 1;
    }
LAB_000161c0:
    if (*(char *)((int)local_1f0 + 0x31) != '\0') {
      iVar10 = 0;
      goto LAB_00015ef0;
    }
    iVar10 = 0;
    iVar8 = local_1f0[1];
    pcVar20 = local_1f8;
joined_r0x00015eac:
    if (iVar8 == 2) {
      iVar8 = __lxstat64(3,pcVar20,(stat64 *)local_1b4);
    }
    else {
      iVar8 = __xstat64(3,pcVar20,(stat64 *)local_1b4);
    }
    if (iVar8 == 0) {
      local_204 = local_1b4._16_4_;
      if (((local_1b4._16_4_ & 0xf000) == 0x4000) && (*(char *)((int)local_1f0 + 0x2a) == '\0')) {
        FUN_00020540();
        if (*(char *)((int)local_1f0 + 0x19) == '\0') {
          dcgettext();
        }
        else {
          dcgettext();
        }
                    /* WARNING: Subroutine does not return */
        error();
      }
      goto LAB_00015ef0;
    }
    puVar30 = &stack0xfffffd68;
LAB_0001620e:
    *(undefined4 *)(puVar30 + -4) = 4;
    *(undefined4 *)(puVar30 + -8) = 0x16215;
    uVar11 = FUN_00020540();
    puVar31 = puVar30 + 4;
    *(undefined4 *)(puVar30 + 4) = 5;
    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb193);
LAB_00016222:
    *(undefined ***)(puVar31 + -4) = ppuVar28;
    *(undefined4 *)(puVar31 + -8) = 0;
    *(undefined4 *)(puVar31 + -0xc) = 0x1622a;
    uVar12 = dcgettext();
    *(undefined4 *)(puVar31 + -0xc) = 0x16231;
    piVar14 = __errno_location();
    *(undefined4 *)(puVar31 + -0xc) = uVar11;
    *(undefined4 *)(puVar31 + -0x10) = uVar12;
    *(int *)(puVar31 + -0x14) = *piVar14;
    *(undefined4 *)(puVar31 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
    *(undefined **)(puVar31 + -0x1c) = &UNK_0001623c;
    error();
  }
LAB_00015e8b:
  if (iVar10 == 0) goto LAB_000161c0;
  if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {
    iVar8 = local_1f0[1];
    pcVar20 = local_200;
    goto joined_r0x00015eac;
  }
LAB_00015ef0:
  puVar32 = auStack_28c;
  puVar29 = auStack_28c;
  puVar34 = auStack_28c;
  if (((byte)local_1fc != '\0') && (local_1f0[0x10] != 0)) {
    local_20c = local_1b4;
    if (((local_204 & 0xf000) != 0x4000) &&
       ((*local_1f0 == 0 && (cVar6 = FUN_0001d250(), cVar6 != '\0')))) {
      FUN_00020540();
      uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
      error(0,0,uVar11);
    }
    FUN_0001d1d0();
  }
  local_20c = (byte *)0x1;
  if (local_1f0[1] != 4) {
    local_20c = (byte *)(local_1f0[1] == 3 & local_1fc);
  }
  if ((byte)local_1f4 == '\0') {
    if ((iVar10 != 0x11) || (local_1f0[2] != 2)) {
      uVar9 = local_204 & 0xf000;
      if (uVar9 == 0x8000) {
LAB_00016b80:
        iVar8 = 0x100;
        local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[6]);
        if (((((char)local_1f0[6] == '\0') &&
             (local_214 = (byte **)CONCAT31(local_214._1_3_,(char)local_1f0[0xb]),
             (char)local_1f0[0xb] == '\0')) &&
            (local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x17)),
            *(char *)((int)local_1f0 + 0x17) == '\0')) &&
           (local_214 = (byte **)CONCAT31(local_214._1_3_,1), *local_1f0 == 0)) {
          local_214 = (byte **)CONCAT31(local_214._1_3_,*(char *)((int)local_1f0 + 0x15));
          iVar8 = (uint)(*(char *)((int)local_1f0 + 0x15) != '\0') << 8;
        }
      }
      else {
        iVar8 = 0x100;
        bVar25 = (uVar9 == 0xa000 || uVar9 == 0x4000) | *(byte *)(local_1f0 + 5) ^ 1;
        local_214 = (byte **)CONCAT31(local_214._1_3_,bVar25);
        if (bVar25 == 0) goto LAB_00016b80;
      }
      iVar8 = __fxstatat64(3,-100,local_1f8,&local_154,iVar8);
      if (iVar8 == 0) {
        local_230 = (char *)((uint)local_230 & 0xffffff00);
      }
      else {
        piVar14 = __errno_location();
        if (*piVar14 == 0x28) {
          if (*(char *)((int)local_1f0 + 0x16) == '\0') goto LAB_00017070;
          local_230 = (char *)((uint)local_230._1_3_ << 8);
        }
        else {
          local_230 = (char *)CONCAT31(local_230._1_3_,1);
          if (*piVar14 != 2) {
LAB_00017070:
            local_1f0 = piVar14;
            FUN_00020540();
            uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
            error(0,*local_1f0,uVar11);
          }
        }
        local_214 = (byte **)((uint)local_214 & 0xffffff00);
        if (iVar10 != 0x11) {
          uVar38 = local_230._0_1_;
          local_230 = (char *)0x0;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);
          puVar34 = auStack_28c;
          goto LAB_00016259;
        }
      }
      if (local_1f0[2] == 2) goto LAB_00016048;
      if ((local_158 == local_154.st_ino._4_4_ && local_15c == (int)local_154.st_ino) &&
         (local_1b4._4_4_ == local_154.st_dev._4_4_ &&
          (byte *)local_1b4._0_4_ == (byte *)local_154.st_dev)) {
        cVar6 = *(char *)((int)local_1f0 + 0x17);
        if (cVar6 == '\0') {
          if (local_1f0[1] == 2) {
            bVar3 = true;
            bVar4 = true;
            goto LAB_000175fc;
          }
          local_234 = (stat64 *)local_f4;
          iVar10 = __lxstat64(3,local_1f8,local_234);
          if (iVar10 == 0) {
            local_240 = &local_94;
            iVar10 = __lxstat64(3,local_200,local_240);
            if ((iVar10 == 0) &&
               (((bVar3 = (local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&
                          ((byte *)local_94.st_dev == (byte *)local_f4._0_4_ &&
                          local_94.st_dev._4_4_ == local_f4._4_4_), psVar26 = local_240,
                 (local_94.st_mode & 0xf000) != 0xa000 || ((local_f4._16_4_ & 0xf000) != 0xa000)) ||
                (*(char *)((int)local_1f0 + 0x15) == '\0')))) goto LAB_0001761e;
          }
LAB_000181e8:
          local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);
          goto LAB_00016048;
        }
LAB_00018440:
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,cVar6);
        goto LAB_00016048;
      }
      if (local_1f0[1] != 2) goto LAB_00016048;
      bVar3 = false;
      bVar4 = false;
LAB_000175fc:
      local_234 = &local_154;
      psVar26 = (stat64 *)local_1b4;
      if (((local_1b4._16_4_ & 0xf000) != 0xa000) || ((local_154.st_mode & 0xf000) != 0xa000)) {
LAB_0001761e:
        if (*local_1f0 != 0) {
          if (bVar3) {
            bVar25 = FUN_00020ea0();
            bVar25 = bVar25 ^ 1;
            cVar6 = '\0';
            goto LAB_00018431;
          }
          if (((((char)local_1f0[6] != '\0') || (local_1f0[1] == 2)) ||
              ((psVar26->st_mode & 0xf000) != 0xa000)) || ((local_234->st_mode & 0xf000) == 0xa000))
          goto LAB_000181e8;
          goto LAB_00017680;
        }
        cVar6 = (char)local_1f0[6];
        if ((cVar6 == '\0') && (*(char *)((int)local_1f0 + 0x15) == '\0')) {
          if ((psVar26->st_mode & 0xf000) != 0xa000) {
LAB_0001847d:
            local_238 = (stat64 *)local_234->st_mode;
            if (((uint)local_234->st_mode & 0xf000) == 0xa000) {
LAB_0001849c:
              cVar6 = (char)local_1f0[6];
            }
            else {
LAB_000187a8:
              if ((*(int *)((int)&psVar26->st_ino + 4) != *(int *)((int)&local_234->st_ino + 4) ||
                   (int)psVar26->st_ino != (int)local_234->st_ino) ||
                 (*(int *)((int)&psVar26->st_dev + 4) != *(int *)((int)&local_234->st_dev + 4) ||
                  (int)psVar26->st_dev != (int)local_234->st_dev)) goto LAB_00016048;
              cVar6 = *(char *)((int)local_1f0 + 0x17);
              if (cVar6 != '\0') goto LAB_00018440;
              cVar6 = (char)local_1f0[6];
            }
            goto LAB_000184a6;
          }
        }
        else {
          local_238 = (stat64 *)local_234->st_mode;
          if (((uint)local_234->st_mode & 0xf000) == 0xa000) goto LAB_00016048;
          if ((bVar3) && (1 < local_234->st_nlink)) {
            local_238 = psVar26;
            cVar6 = FUN_00020ea0();
            if (cVar6 != '\0') {
              psVar26 = local_238;
              if ((local_238->st_mode & 0xf000) != 0xa000) goto LAB_0001847d;
              goto LAB_0001849c;
            }
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));
            bVar25 = *(byte *)(local_1f0 + 6) ^ 1;
            cVar6 = '\0';
            goto LAB_00018431;
          }
          if ((psVar26->st_mode & 0xf000) != 0xa000) goto LAB_000187a8;
LAB_000184a6:
          if ((((cVar6 != '\0') && ((local_1b4._16_4_ & 0xf000) == 0xa000)) &&
              (1 < local_234->st_nlink)) &&
             (local_238 = psVar26, pcVar20 = canonicalize_file_name(local_200), psVar26 = local_238,
             pcVar20 != (char *)0x0)) {
            bVar25 = FUN_00020ea0();
            bVar25 = bVar25 ^ 1;
            free(pcVar20);
            cVar6 = '\0';
            goto LAB_00018431;
          }
        }
        if (((char)local_1f0[0xb] == '\0') ||
           (local_238 = (stat64 *)local_234->st_mode, ((uint)local_234->st_mode & 0xf000) != 0xa000)
           ) {
          if (local_1f0[1] != 2) goto LAB_00017680;
          if ((psVar26->st_mode & 0xf000) == 0xa000) {
            iVar10 = __xstat64(3,local_200,&local_94);
            if (iVar10 != 0) goto LAB_00016048;
          }
          else {
            ppbVar17 = (byte **)&local_94;
            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {
              *ppbVar17 = *(byte **)&psVar26->st_dev;
              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);
              ppbVar17 = ppbVar17 + (uint)bVar40 * -2 + 1;
            }
          }
          local_238 = (stat64 *)local_234->st_mode;
          if (((uint)local_234->st_mode & 0xf000) == 0xa000) {
            iVar10 = __xstat64(3,local_1f8,(stat64 *)local_f4);
            if (iVar10 != 0) goto LAB_00016048;
          }
          else {
            psVar26 = local_234;
            puVar37 = (undefined4 *)local_f4;
            for (iVar10 = 0x18; iVar10 != 0; iVar10 = iVar10 + -1) {
              *puVar37 = (int)psVar26->st_dev;
              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);
              puVar37 = puVar37 + (uint)bVar40 * -2 + 1;
            }
          }
          if ((local_94.st_ino._4_4_ == local_98 && (int)local_94.st_ino == local_9c) &&
             (local_94.st_dev._4_4_ == local_f4._4_4_ &&
              (byte *)local_94.st_dev == (byte *)local_f4._0_4_)) {
            if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00017680;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(local_234->st_mode & 0xf000) != 0xa000);
          }
        }
        goto LAB_00016048;
      }
      cVar6 = FUN_00020ea0();
      if (cVar6 == '\0') {
        if ((*local_1f0 != 0) || (!bVar4)) goto LAB_000181e8;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(byte *)(local_1f0 + 6));
        cVar6 = '\x01';
        bVar25 = *(byte *)(local_1f0 + 6) ^ 1;
LAB_00018431:
        if (bVar25 != 0) goto LAB_00018440;
      }
LAB_00017680:
      FUN_000203c0();
      FUN_000203c0();
LAB_000176b3:
      uVar11 = dcgettext();
      goto LAB_000176c0;
    }
    local_230 = (char *)((uint)local_230 & 0xffffff00);
    local_214 = (byte **)((uint)local_214._1_3_ << 8);
LAB_00016048:
    if (*(char *)((int)local_1f0 + 0x2d) == '\0') {
      if ((char)local_1f0[6] != '\0') goto LAB_00017420;
      if ((local_204 & 0xf000) != 0x4000) {
LAB_00016ca2:
        puVar34 = auStack_28c;
        if ((local_1f0[2] == 2) ||
           ((local_1f0[2] == 3 && (cVar6 = FUN_00014de0(), puVar34 = auStack_28c, cVar6 == '\0'))))
        goto LAB_00016570;
      }
LAB_00016cbd:
      puVar34 = auStack_28c;
      if ((byte)local_1f4 == '\0') {
        uVar9 = local_204 & 0xf000;
        if ((local_154.st_mode & 0xf000) != 0x4000) {
          if (uVar9 == 0x4000) {
            if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {
              FUN_000203c0();
              FUN_000203c0();
              goto LAB_000176b3;
            }
            if ((byte)local_1fc != '\0') goto LAB_00016d0d;
            goto LAB_00017827;
          }
          iVar10 = *local_1f0;
          iVar8 = iVar10;
          if ((byte)local_1fc == '\0') goto LAB_00016d69;
LAB_00016d0d:
          if (iVar10 != 3) {
            cVar6 = FUN_0001d250();
            if (cVar6 != '\0') {
              FUN_000203c0();
              FUN_000203c0();
              goto LAB_000176b3;
            }
            if ((uVar9 != 0x4000) && ((local_154.st_mode & 0xf000) == 0x4000)) goto LAB_0001828c;
            goto LAB_00016d61;
          }
          iVar10 = 3;
          iVar8 = 3;
          if ((char)local_1f0[6] != '\0') goto LAB_00017827;
LAB_00018700:
          pcVar20 = (char *)FUN_0001d030();
          if (*pcVar20 == '.') {
            bVar3 = false;
LAB_00018ca5:
            if ((pcVar20[(pcVar20[1] == '.') + 1] == '\0') ||
               (pcVar20[(pcVar20[1] == '.') + 1] == '/')) goto LAB_00016d83;
            if (bVar3) goto LAB_0001785b;
          }
          if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00016da2;
LAB_0001785b:
          if (iVar8 != 3) {
            local_230 = (char *)strlen(pcVar20);
            local_234 = (stat64 *)FUN_0001d030();
            sVar16 = strlen((char *)local_234);
            local_238 = (stat64 *)&DAT_00039770;
            local_1f4 = DAT_00039770;
            local_23c = strlen(DAT_00039770);
            if (((local_230 == (char *)(local_23c + sVar16)) &&
                (iVar10 = memcmp(pcVar20,local_234,sVar16), iVar10 == 0)) &&
               (iVar10 = strcmp(pcVar20 + sVar16,local_1f4), iVar10 == 0)) {
              sVar16 = strlen(local_1f8);
              pcVar20 = (char *)FUN_00022ed0();
              local_1f4 = *(char **)&local_238->st_dev;
              pcVar18 = (char *)mempcpy(pcVar20,local_1f8,sVar16);
              strcpy(pcVar18,local_1f4);
              iVar10 = __xstat64(3,pcVar20,&local_94);
              free(pcVar20);
              if (((iVar10 == 0) &&
                  (local_158 == local_94.st_ino._4_4_ && local_15c == (int)local_94.st_ino)) &&
                 ((local_1b4._4_4_ == local_94.st_dev._4_4_ &&
                  ((byte *)local_1b4._0_4_ == (byte *)local_94.st_dev)))) {
                uVar11 = dcgettext();
                FUN_000203c0();
                FUN_000203c0();
LAB_000176c0:
                    /* WARNING: Subroutine does not return */
                error(0,0,uVar11);
              }
            }
          }
          pcVar20 = (char *)FUN_0001c300();
          local_230 = pcVar20;
          if (pcVar20 == (char *)0x0) {
            piVar14 = __errno_location();
            iVar10 = 0x11;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
            puVar34 = auStack_28c;
            if (*piVar14 != 2) {
              FUN_00020540();
              uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
              error(0,*piVar14,uVar11);
            }
          }
          else {
            sVar16 = strlen(pcVar20);
            iVar8 = -(sVar16 + 0x1c & 0xfffffff0);
            *(size_t *)(&stack0xfffffd6c + iVar8) = sVar16 + 1;
            *(char **)(&stack0xfffffd68 + iVar8) = pcVar20;
            *(int *)(&stack0xfffffd64 + iVar8) = (int)&local_280 + iVar8;
            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179e2;
            pcVar18 = (char *)memcpy(*(void **)(&stack0xfffffd64 + iVar8),
                                     *(void **)(&stack0xfffffd68 + iVar8),
                                     *(size_t *)(&stack0xfffffd6c + iVar8));
            *(char **)(&stack0xfffffd64 + iVar8) = pcVar20;
            iVar10 = 0x11;
            *(undefined4 *)(&stack0xfffffd60 + iVar8) = 0x179f1;
            free(*(void **)(&stack0xfffffd64 + iVar8));
            local_230 = pcVar18;
            local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
            puVar34 = auStack_28c + iVar8;
          }
          goto LAB_00016259;
        }
        if (uVar9 != 0x4000) {
LAB_0001828c:
          if (((char)local_1f0[6] == '\0') || (iVar10 = *local_1f0, iVar10 == 0)) {
            FUN_00020540();
            uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
            error(0,0,uVar11);
          }
LAB_00017827:
          iVar8 = iVar10;
          if ((local_1b4._16_4_ & 0xf000) == 0x4000) {
LAB_0001892a:
            if ((local_154.st_mode & 0xf000) == 0x4000) goto LAB_00018756;
            if (iVar8 == 0) {
              FUN_00020700();
              FUN_00020700();
              goto LAB_000176b3;
            }
          }
LAB_0001783f:
          pcVar20 = (char *)FUN_0001d030();
          if (*pcVar20 == '.') {
            bVar3 = true;
            goto LAB_00018ca5;
          }
          goto LAB_0001785b;
        }
LAB_00016d61:
        iVar8 = *local_1f0;
LAB_00016d69:
        if ((char)local_1f0[6] != '\0') {
          if ((local_1b4._16_4_ & 0xf000) == 0x4000) goto LAB_0001892a;
LAB_00018756:
          if (iVar8 != 0) goto LAB_0001783f;
LAB_00016da2:
          uVar38 = local_230._0_1_;
          iVar10 = 0x11;
          local_230 = (char *)0x0;
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,uVar38);
          puVar34 = auStack_28c;
          goto LAB_00016259;
        }
        bVar3 = false;
        if (iVar8 != 0) goto LAB_00018700;
LAB_00016d83:
        if (((local_154.st_mode & 0xf000) == 0x4000 || bVar3) ||
           (((*(char *)((int)local_1f0 + 0x15) == '\0' &&
             ((*(char *)((int)local_1f0 + 0x22) == '\0' || (local_154.st_nlink < 2)))) &&
            ((local_1f0[1] != 2 || ((local_1b4._16_4_ & 0xf000) == 0x8000)))))) goto LAB_00016da2;
        iVar10 = unlink(local_1f8);
        if ((iVar10 != 0) && (piVar14 = __errno_location(), *piVar14 != 2)) {
          local_1f0 = piVar14;
          FUN_00020540();
          uVar11 = dcgettext();
                    /* WARNING: Subroutine does not return */
          error(0,*local_1f0,uVar11);
        }
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x2e));
        if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
          iVar10 = 0x11;
          FUN_00020540();
          dcgettext();
          __printf_chk();
          local_230 = (char *)0x0;
          puVar34 = auStack_28c;
          goto LAB_00016259;
        }
        if ((byte)local_1fc != '\0') {
          iVar10 = 0x11;
          local_230 = (char *)local_1f0[0xf];
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(byte)local_1fc);
          if ((char *)local_1f0[0xf] == (char *)0x0) goto LAB_00016356;
          local_230 = (char *)0x0;
          iVar10 = 0x11;
          goto LAB_00016277;
        }
        iVar10 = 0x11;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
        local_230 = (char *)0x0;
        puVar29 = auStack_28c;
        goto LAB_00016356;
      }
LAB_00016570:
      puVar29 = puVar34;
      uVar9 = 1;
      goto LAB_0001614a;
    }
    if ((local_204 & 0xf000) == 0x4000) {
      if ((char)local_1f0[6] == '\0') goto LAB_00016cbd;
LAB_00017420:
      iVar10 = local_1f0[2];
      if ((iVar10 != 2) &&
         (((iVar10 != 3 &&
           (((iVar10 != 4 || (*(char *)((int)local_1f0 + 0x2f) == '\0')) ||
            (cVar6 = FUN_00014980(), cVar6 != '\0')))) || (cVar6 = FUN_00014de0(), cVar6 != '\0'))))
      goto LAB_00016cbd;
      puVar34 = auStack_28c;
      if (local_208 != (undefined1 *)0x0) {
        *local_208 = 1;
        puVar34 = auStack_28c;
      }
      goto LAB_00016570;
    }
    iVar10 = FUN_00021ee0();
    if (iVar10 < 0) {
      if ((char)local_1f0[6] == '\0') goto LAB_00016ca2;
      goto LAB_00017420;
    }
    if (local_208 != (undefined1 *)0x0) {
      *local_208 = 1;
    }
    iVar10 = FUN_0001a5c0(local_1f8,local_15c,local_158);
    puVar34 = auStack_28c;
    if ((iVar10 == 0) || (cVar6 = FUN_00014f10(), puVar34 = auStack_28c, cVar6 != '\0'))
    goto LAB_00016570;
    puVar29 = auStack_28c;
    if (*(char *)((int)local_1f0 + 0x25) != '\0') {
      FUN_00015060();
      puVar29 = auStack_28c;
    }
    goto LAB_00016148;
  }
  local_214 = (byte **)((uint)local_214._1_3_ << 8);
  local_230 = (char *)0x0;
LAB_00016259:
  puVar32 = puVar34;
  if (((byte)local_1fc == '\0') || (local_1f0[0xf] == 0)) {
LAB_00016338:
    puVar29 = puVar32;
    if ((*(char *)((int)local_1f0 + 0x2e) != '\0') && ((char)local_1f0[6] == '\0')) {
LAB_00016b18:
      if ((local_204 & 0xf000) != 0x4000) {
        *(undefined4 *)(puVar29 + -4) = 0x16b45;
        FUN_00014d30();
      }
    }
    if (iVar10 == 0) {
      if ((char)local_1f0[6] != '\0') goto LAB_00016524;
      goto LAB_000165a0;
    }
LAB_00016356:
    uVar9 = local_158;
    iVar8 = local_15c;
    if ((*(char *)((int)local_1f0 + 0x2a) != '\0') && ((local_204 & 0xf000) == 0x4000)) {
      local_214 = (byte **)local_1b4._0_4_;
      local_210 = local_1b4._4_4_;
      if ((byte)local_1fc == '\0') {
        *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;
        *(byte ***)(puVar29 + -8) = local_214;
        *(uint *)(puVar29 + -0xc) = uVar9;
        *(int *)(puVar29 + -0x10) = iVar8;
        *(undefined4 *)(puVar29 + -0x14) = 0x163c0;
        local_214 = (byte **)FUN_0001a550();
      }
      else {
        *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;
        *(byte ***)(puVar29 + -0x14) = local_214;
        *(uint *)(puVar29 + -0x18) = uVar9;
        *(int *)(puVar29 + -0x1c) = iVar8;
        *(char **)(puVar29 + -0x20) = local_1f8;
        *(undefined4 *)(puVar29 + -0x24) = 0x176f4;
        local_214 = (byte **)FUN_0001a5c0();
      }
      if (local_214 != (byte **)0x0) {
LAB_000163d3:
        *(byte ***)(puVar29 + -0xc) = local_214;
        *(char **)(puVar29 + -0x10) = local_200;
        *(undefined4 *)(puVar29 + -0x14) = 0x163e7;
        cVar6 = FUN_00020ea0();
        if (cVar6 != '\0') {
          *(undefined4 *)(puVar29 + -8) = DAT_00039764;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x18b02;
          uVar11 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = DAT_00039768;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18b16;
          uVar12 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "cannot copy a directory, %s, into itself, %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18b2b;
          uVar15 = dcgettext();
          *(undefined4 *)(puVar29 + -0x10) = uVar11;
          *(undefined4 *)(puVar29 + -0x14) = uVar12;
          *(undefined4 *)(puVar29 + -0x18) = uVar15;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018b39;
          error();
        }
        *(byte ***)(puVar29 + -0xc) = local_214;
        *(char **)(puVar29 + -0x10) = local_1f8;
        *(undefined4 *)(puVar29 + -0x14) = 0x16406;
        cVar6 = FUN_00020ea0();
        if (cVar6 != '\0') {
          *(undefined4 *)(puVar29 + -0xc) = DAT_00039768;
          *(undefined4 *)(puVar29 + -0x10) = 4;
          *(undefined4 *)(puVar29 + -0x14) = 0x18eee;
          uVar11 = FUN_00020540();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "warning: source directory %s specified more than once";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18f03;
          uVar12 = dcgettext();
          *(undefined4 *)(puVar29 + -0x14) = uVar11;
          *(undefined4 *)(puVar29 + -0x18) = uVar12;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018f0e;
          error();
        }
        if ((local_1f0[1] != 4) && ((local_1f0[1] != 3 || ((byte)local_1fc == '\0')))) {
          *(byte ***)(puVar29 + -8) = local_214;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x18d3f;
          uVar11 = FUN_000203c0();
          *(char **)(puVar29 + -8) = local_1f8;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18d53;
          uVar12 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "will not create hard link %s to directory %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x18d68;
          uVar15 = dcgettext();
          *(undefined4 *)(puVar29 + -0x10) = uVar11;
          *(undefined4 *)(puVar29 + -0x14) = uVar12;
          *(undefined4 *)(puVar29 + -0x18) = uVar15;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018d76;
          error();
        }
      }
LAB_00016438:
      cVar6 = (char)local_1f0[6];
LAB_00016afb:
      if (cVar6 == '\0') {
LAB_00016b03:
        local_208 = (undefined1 *)((uint)local_1f4 & 0xff);
      }
      else {
LAB_00016495:
        if (iVar10 == 0x11) {
          *(char **)(puVar29 + -0xc) = local_1f8;
          *(char **)(puVar29 + -0x10) = local_200;
          *(undefined4 *)(puVar29 + -0x14) = 0x174bc;
          iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));
          if (iVar10 != 0) {
            *(undefined4 *)(puVar29 + -4) = 0x174cc;
            piVar14 = __errno_location();
            iVar10 = *piVar14;
            if (iVar10 != 0) goto LAB_0001649e;
          }
LAB_00016524:
          if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
            *(undefined4 *)(puVar29 + -8) = 5;
            *(char **)(puVar29 + -0xc) = "renamed ";
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x18223;
            uVar11 = dcgettext();
            *(undefined4 *)(puVar29 + -0xc) = uVar11;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x1822d;
            __printf_chk();
            *(undefined4 *)(puVar29 + -0x14) = 0x18244;
            FUN_00014d30();
          }
          if (*(char *)((int)local_1f0 + 0x21) != '\0') {
            *(int **)(puVar29 + -4) = local_1f0;
            *(undefined4 *)(puVar29 + -8) = 1;
            *(undefined4 *)(puVar29 + -0xc) = 0;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x18208;
            FUN_00015960();
          }
          if (local_208 != (undefined1 *)0x0) {
            *local_208 = 1;
          }
          puVar34 = puVar29;
          if (((byte)local_1fc != '\0') && (*(char *)((int)local_1f0 + 0x31) == '\0')) {
            *(undefined1 **)(puVar29 + -8) = local_1b4;
            piVar14 = local_1f0;
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(int *)(puVar29 + -0x10) = piVar14[0xf];
            *(undefined4 *)(puVar29 + -0x14) = 0x17ab6;
            FUN_0001d1d0();
            uVar9 = local_1fc & 0xff;
            goto LAB_0001614a;
          }
          goto LAB_00016570;
        }
LAB_0001649e:
        if (iVar10 == 0x16) {
          *(undefined4 *)(puVar29 + -8) = DAT_00039764;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x185ca;
          uVar11 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = DAT_00039768;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x185de;
          uVar12 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "cannot move %s to a subdirectory of itself, %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x185f3;
          uVar15 = dcgettext();
          *(undefined4 *)(puVar29 + -0x10) = uVar11;
          *(undefined4 *)(puVar29 + -0x14) = uVar12;
          *(undefined4 *)(puVar29 + -0x18) = uVar15;
          *(undefined4 *)(puVar29 + -0x1c) = 0;
          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar29 + -0x24) = &UNK_00018606;
          error();
        }
        if (iVar10 != 0x12) {
          *(char **)(puVar29 + -8) = local_1f8;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 1;
          *(undefined4 *)(puVar29 + -0x14) = 0x180a2;
          uVar11 = FUN_000203c0();
          *(char **)(puVar29 + -8) = local_200;
          *(undefined4 *)(puVar29 + -0xc) = 4;
          *(undefined4 *)(puVar29 + -0x10) = 0;
          local_1f0 = (int *)uVar11;
          *(undefined4 *)(puVar29 + -0x14) = 0x180ba;
          uVar11 = FUN_000203c0();
          *(undefined4 *)(puVar29 + -8) = 5;
          *(char **)(puVar29 + -0xc) = "cannot move %s to %s";
          *(undefined4 *)(puVar29 + -0x10) = 0;
          *(undefined4 *)(puVar29 + -0x14) = 0x180cf;
          uVar12 = dcgettext();
          *(int **)(puVar29 + -0x10) = local_1f0;
          *(undefined4 *)(puVar29 + -0x14) = uVar11;
          *(undefined4 *)(puVar29 + -0x18) = uVar12;
          *(int *)(puVar29 + -0x1c) = iVar10;
          goto LAB_00017594;
        }
        uVar9 = local_204 & 0xf000;
        if (uVar9 == 0x4000) {
          *(char **)(puVar29 + -0x10) = local_1f8;
          *(undefined4 *)(puVar29 + -0x14) = 0x1825e;
          iVar10 = rmdir(*(char **)(puVar29 + -0x10));
          if (iVar10 != 0) {
            *(undefined4 *)(puVar29 + -4) = 0x1826e;
            piVar14 = __errno_location();
            if (*piVar14 != 2) goto LAB_00017548;
          }
        }
        else {
          *(char **)(puVar29 + -0x10) = local_1f8;
          *(undefined4 *)(puVar29 + -0x14) = 0x164d6;
          iVar10 = unlink(*(char **)(puVar29 + -0x10));
          if (iVar10 != 0) {
            *(undefined4 *)(puVar29 + -4) = 0x1753d;
            piVar14 = __errno_location();
            if (*piVar14 != 2) {
LAB_00017548:
              *(char **)(puVar29 + -8) = local_1f8;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 1;
              *(undefined4 *)(puVar29 + -0x14) = 0x1755a;
              uVar11 = FUN_000203c0();
              *(char **)(puVar29 + -8) = local_200;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              local_1f0 = (int *)uVar11;
              *(undefined4 *)(puVar29 + -0x14) = 0x17572;
              uVar11 = FUN_000203c0();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) =
                   "inter-device move failed: %s to %s; unable to remove target";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x17587;
              uVar12 = dcgettext();
              *(int **)(puVar29 + -0x10) = local_1f0;
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
LAB_00017594:
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_0001759b;
              error();
            }
          }
          bVar25 = uVar9 != 0x4000 & *(byte *)((int)local_1f0 + 0x2e);
          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);
          if (bVar25 != 0) {
            *(undefined4 *)(puVar29 + -8) = 5;
            *(char **)(puVar29 + -0xc) = "copied ";
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x17a23;
            uVar11 = dcgettext();
            *(undefined4 *)(puVar29 + -0xc) = uVar11;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x17a2d;
            __printf_chk();
            *(undefined4 *)(puVar29 + -0x14) = 0x17a44;
            FUN_00014d30();
            local_208 = (undefined1 *)0x1;
            goto LAB_000165b7;
          }
        }
        local_208 = (undefined1 *)0x1;
        local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
      }
      goto LAB_000165b7;
    }
    cVar6 = (char)local_1f0[6];
    if (cVar6 == '\0') {
      if (*(char *)((int)local_1f0 + 0x22) == '\0') goto LAB_000165a0;
      if (*(char *)((int)local_1f0 + 0x17) == '\0') goto LAB_00016ac0;
      local_214 = (byte **)0x0;
      goto LAB_00016b03;
    }
    if (local_1b4._20_4_ != 1) {
      if ((*(char *)((int)local_1f0 + 0x22) != '\0') && (*(char *)((int)local_1f0 + 0x17) == '\0'))
      {
LAB_00016ac0:
        if ((1 < (uint)local_1b4._20_4_) ||
           ((((byte)local_1fc != '\0' && (local_1f0[1] == 3)) ||
            (local_214 = (byte **)0x0, local_1f0[1] == 4)))) {
          *(undefined4 *)(puVar29 + -0x10) = local_1b4._4_4_;
          *(undefined4 *)(puVar29 + -0x14) = local_1b4._0_4_;
          *(uint *)(puVar29 + -0x18) = local_158;
          *(int *)(puVar29 + -0x1c) = local_15c;
          *(char **)(puVar29 + -0x20) = local_1f8;
          *(undefined4 *)(puVar29 + -0x24) = 0x1772e;
          local_214 = (byte **)FUN_0001a5c0();
          goto LAB_00017737;
        }
        goto LAB_00016afb;
      }
      local_214 = (byte **)0x0;
      goto LAB_00016495;
    }
    *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;
    *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;
    *(uint *)(puVar29 + -0xc) = local_158;
    *(int *)(puVar29 + -0x10) = local_15c;
    *(undefined4 *)(puVar29 + -0x14) = 0x1834d;
    local_214 = (byte **)FUN_0001a550();
LAB_00017737:
    piVar14 = local_1f0;
    if (local_214 == (byte **)0x0) goto LAB_00016438;
    if ((local_204 & 0xf000) == 0x4000) goto LAB_000163d3;
    *(byte **)(puVar29 + -0xc) = local_20c;
    *(uint *)(puVar29 + -0x10) = (uint)*(byte *)((int)piVar14 + 0x2e);
    *(undefined4 *)(puVar29 + -0x14) = 0x17785;
    cVar6 = FUN_00014f10();
    puVar34 = puVar29;
    if (cVar6 != '\0') goto LAB_00016570;
    if (*(char *)((int)local_1f0 + 0x25) != '\0') goto LAB_000177a0;
LAB_00016fcb:
    pcVar20 = local_230;
    if (local_230 != (char *)0x0) {
      *(char **)(puVar29 + -0xc) = local_1f8;
      *(char **)(puVar29 + -0x10) = pcVar20;
      *(undefined4 *)(puVar29 + -0x14) = 0x16fe8;
      iVar10 = rename(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));
      if (iVar10 != 0) {
        *(char **)(puVar29 + -0xc) = local_1f8;
        *(undefined4 *)(puVar29 + -0x10) = 4;
        *(undefined4 *)(puVar29 + -0x14) = 0x182f0;
        uVar11 = FUN_00020540();
        puVar31 = puVar29 + -8;
        *(undefined4 *)(puVar29 + -8) = 5;
        ppuVar28 = ppuVar28 + -0x2be3;
        goto LAB_00016222;
      }
      if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
        *(char **)(puVar29 + -8) = local_1f8;
        *(undefined4 *)(puVar29 + -0xc) = 4;
        *(undefined4 *)(puVar29 + -0x10) = 1;
        *(undefined4 *)(puVar29 + -0x14) = 0x17015;
        uVar11 = FUN_000203c0();
        *(char **)(puVar29 + -8) = local_230;
        *(undefined4 *)(puVar29 + -0xc) = 4;
        *(undefined4 *)(puVar29 + -0x10) = 0;
        *(undefined4 *)(puVar29 + -0x14) = 0x17029;
        uVar12 = FUN_000203c0();
        *(undefined4 *)(puVar29 + -8) = 5;
        *(undefined ***)(puVar29 + -0xc) = ppuVar28 + -0x2bde;
        *(undefined4 *)(puVar29 + -0x10) = 0;
        *(undefined4 *)(puVar29 + -0x14) = 0x1703e;
        uVar15 = dcgettext();
        *(undefined4 *)(puVar29 + -0x14) = uVar11;
        *(undefined4 *)(puVar29 + -0x18) = uVar12;
        *(undefined4 *)(puVar29 + -0x1c) = uVar15;
        *(undefined4 *)(puVar29 + -0x20) = 1;
        *(undefined4 *)(puVar29 + -0x24) = 0x17048;
        __printf_chk();
      }
    }
  }
  else {
LAB_00016277:
    if ((char)local_1f0[6] != '\0') goto LAB_00016338;
    if (*local_1f0 == 0) {
      ppbVar17 = (byte **)&local_154;
      if ((char)local_214 == '\0') {
        *(stat64 **)(puVar32 + -8) = &local_94;
        *(char **)(puVar32 + -0xc) = local_1f8;
        *(undefined4 *)(puVar32 + -0x10) = 3;
        local_214 = (byte **)&local_94;
        *(undefined4 *)(puVar32 + -0x14) = 0x17a7d;
        iVar8 = __lxstat64(*(int *)(puVar32 + -0x10),*(char **)(puVar32 + -0xc),
                           *(stat64 **)(puVar32 + -8));
        ppbVar17 = local_214;
        if (iVar8 != 0) goto LAB_00016338;
      }
      piVar14 = local_1f0;
      if (((uint)ppbVar17[4] & 0xf000) == 0xa000) {
        *(byte ***)(puVar32 + -8) = ppbVar17;
        *(char **)(puVar32 + -0xc) = local_1f8;
        *(int *)(puVar32 + -0x10) = piVar14[0xf];
        *(undefined4 *)(puVar32 + -0x14) = 0x162d3;
        cVar6 = FUN_0001d250();
        if (cVar6 != '\0') {
          *(char **)(puVar32 + -8) = local_1f8;
          *(undefined4 *)(puVar32 + -0xc) = 4;
          *(undefined4 *)(puVar32 + -0x10) = 1;
          *(undefined4 *)(puVar32 + -0x14) = 0x162ec;
          uVar11 = FUN_000203c0();
          *(char **)(puVar32 + -8) = local_200;
          *(undefined4 *)(puVar32 + -0xc) = 4;
          *(undefined4 *)(puVar32 + -0x10) = 0;
          *(undefined4 *)(puVar32 + -0x14) = 0x16300;
          local_1f0 = (int *)FUN_000203c0();
          *(undefined4 *)(puVar32 + -8) = 5;
          *(char **)(puVar32 + -0xc) = "will not copy %s through just-created symlink %s";
          *(undefined4 *)(puVar32 + -0x10) = 0;
          *(undefined4 *)(puVar32 + -0x14) = 0x16319;
          uVar12 = dcgettext();
          piVar14 = local_1f0;
          *(undefined4 *)(puVar32 + -0x10) = uVar11;
          *(int **)(puVar32 + -0x14) = piVar14;
          *(undefined4 *)(puVar32 + -0x18) = uVar12;
          *(undefined4 *)(puVar32 + -0x1c) = 0;
          *(undefined4 *)(puVar32 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
          *(undefined **)(puVar32 + -0x24) = &UNK_0001632d;
          error();
        }
      }
      goto LAB_00016338;
    }
    puVar29 = puVar32;
    if (*(char *)((int)local_1f0 + 0x2e) != '\0') goto LAB_00016b18;
    if (iVar10 != 0) goto LAB_00016356;
LAB_000165a0:
    local_208 = (undefined1 *)((uint)local_1f4 & 0xff);
    local_214 = (byte **)0x0;
LAB_000165b7:
    uVar9 = local_204;
    if (*(char *)((int)local_1f0 + 0x2b) != '\0') {
      uVar9 = local_1f0[4];
    }
    local_234 = (stat64 *)(uVar9 & 0xfff);
    if (*(char *)((int)local_1f0 + 0x1d) == '\0') {
      local_238 = (stat64 *)(local_204 & 0xf000);
      if (local_238 == (stat64 *)0x4000) {
        *(int **)(puVar29 + -0x10) = local_1f0;
        *(undefined1 **)(puVar29 + -0x14) = local_208;
        *(uint *)(puVar29 + -0x18) = local_204;
        *(char **)(puVar29 + -0x1c) = local_1f8;
        *(char **)(puVar29 + -0x20) = local_200;
        *(undefined4 *)(puVar29 + -0x24) = 0x16dee;
        cVar6 = FUN_000156e0();
        if (cVar6 != '\0') {
          local_23c = (uint)local_234 & 0x12;
          goto LAB_00016e08;
        }
      }
      else {
        *(int **)(puVar29 + -0x10) = local_1f0;
        *(undefined1 **)(puVar29 + -0x14) = local_208;
        *(uint *)(puVar29 + -0x18) = local_204;
        *(char **)(puVar29 + -0x1c) = local_1f8;
        *(char **)(puVar29 + -0x20) = local_200;
        *(undefined4 *)(puVar29 + -0x24) = 0x16a82;
        cVar6 = FUN_000156e0();
        local_23c = 0;
        if (cVar6 != '\0') goto LAB_0001664e;
      }
    }
    else {
      *(int **)(puVar29 + -0x10) = local_1f0;
      *(undefined1 **)(puVar29 + -0x14) = local_208;
      *(uint *)(puVar29 + -0x18) = local_204;
      *(char **)(puVar29 + -0x1c) = local_1f8;
      *(char **)(puVar29 + -0x20) = local_200;
      *(undefined4 *)(puVar29 + -0x24) = 0x16618;
      cVar6 = FUN_000156e0();
      if (cVar6 != '\0') {
        local_23c = (uint)local_234 & 0x3f;
        local_238 = (stat64 *)(local_204 & 0xf000);
        if ((stat64 *)(local_204 & 0xf000) == (stat64 *)0x4000) {
LAB_00016e08:
          piVar14 = local_1f0;
          if (local_228 == (int *)0x0) {
            local_20c = (byte *)local_1b4._0_4_;
            local_224 = local_1b4._4_4_;
          }
          else {
            local_20c = (byte *)local_1b4._0_4_;
            local_224 = local_1b4._4_4_;
            piVar23 = local_228;
            do {
              if ((piVar23[2] == local_158 && piVar23[1] == local_15c) &&
                 (local_1b4._4_4_ == piVar23[4] && (byte *)local_1b4._0_4_ == (byte *)piVar23[3])) {
                *(char **)(puVar29 + -0xc) = local_200;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x16e7e;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                pcVar20 = "cannot copy cyclic symbolic link %s";
                goto LAB_00016e8b;
              }
              piVar23 = (int *)*piVar23;
            } while (piVar23 != (int *)0x0);
          }
          local_20c = (byte *)local_1b4._0_4_;
          local_224 = local_1b4._4_4_;
          local_238 = (stat64 *)((uint)(puVar29 + -0x11) & 0xfffffff0);
          local_238->__pad1 = local_158;
          local_238->__st_ino = local_1b4._0_4_;
          *(int **)&local_238->st_dev = local_228;
          *(int *)((int)&local_238->st_dev + 4) = local_15c;
          local_238->st_mode = local_1b4._4_4_;
          if (((byte)local_1f4 == '\0') && ((local_154.st_mode & 0xf000) == 0x4000)) {
            if (*(char *)((int)local_1f0 + 0x21) == '\0') {
              bVar25 = *(byte *)((int)local_1f0 + 0x25);
              if (bVar25 != 0) goto LAB_0001889e;
            }
            else {
              bVar25 = *(byte *)((int)local_1f0 + 0x25);
LAB_0001889e:
              *(int **)(puVar29 + -0x24) = local_1f0;
              *(undefined4 *)(puVar29 + -0x28) = 0;
              *(uint *)(puVar29 + -0x2c) = (uint)bVar25;
              *(char **)(puVar29 + -0x30) = local_1f8;
              *(undefined4 *)(puVar29 + -0x34) = 0x188b3;
              cVar6 = FUN_00015960();
              if ((cVar6 == '\0') &&
                 (puVar34 = puVar29 + -0x20, *(char *)((int)piVar14 + 0x26) != '\0'))
              goto LAB_00016fad;
            }
            local_24c = local_24c & 0xffffff00;
            local_23c = 0;
          }
          else {
            *(uint *)(puVar29 + -0x2c) = ~local_23c & (uint)local_234;
            *(char **)(puVar29 + -0x30) = local_1f8;
            *(undefined4 *)(puVar29 + -0x34) = 0x17154;
            iVar10 = mkdir(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0x2c) = local_1f8;
              *(undefined4 *)(puVar29 + -0x30) = 4;
              *(undefined4 *)(puVar29 + -0x34) = 100000;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -0x28;
              *(undefined4 *)(puVar29 + -0x28) = 5;
              pcVar20 = "cannot create directory %s";
LAB_00016f90:
              *(char **)(puVar33 + -4) = pcVar20;
              *(undefined4 *)(puVar33 + -8) = 0;
              *(undefined4 *)(puVar33 + -0xc) = 0x16f98;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar33 + -0xc) = 0x16f9f;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar33 + -0xc) = uVar11;
              *(undefined4 *)(puVar33 + -0x10) = uVar12;
              *(int *)(puVar33 + -0x14) = *piVar14;
              *(undefined4 *)(puVar33 + -0x18) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar33 + -0x1c) = &UNK_00016faa;
              error();
            }
            *(stat64 **)(puVar29 + -0x28) = &local_154;
            *(char **)(puVar29 + -0x2c) = local_1f8;
            *(undefined4 *)(puVar29 + -0x30) = 3;
            *(undefined4 *)(puVar29 + -0x34) = 0x17176;
            iVar10 = __lxstat64(*(int *)(puVar29 + -0x30),*(char **)(puVar29 + -0x2c),
                                *(stat64 **)(puVar29 + -0x28));
            _Var5 = local_154.st_mode;
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0x2c) = local_1f8;
              *(undefined4 *)(puVar29 + -0x30) = 4;
              *(undefined4 *)(puVar29 + -0x34) = 0x18ce1;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -0x28;
              *(undefined4 *)(puVar29 + -0x28) = 5;
              pcVar20 = "cannot stat %s";
              goto LAB_00016f90;
            }
            local_24c = local_24c & 0xffffff00;
            if ((local_154.st_mode & 0x1c0) != 0x1c0) {
              *(__mode_t *)(puVar29 + -0x2c) = local_154.st_mode | 0x1c0;
              *(char **)(puVar29 + -0x30) = local_1f8;
              *(undefined4 *)(puVar29 + -0x34) = 0x171b2;
              iVar10 = chmod(*(char **)(puVar29 + -0x30),*(__mode_t *)(puVar29 + -0x2c));
              local_270 = _Var5;
              local_24c = CONCAT31(local_24c._1_3_,1);
              if (iVar10 != 0) {
                *(char **)(puVar29 + -0x2c) = local_1f8;
                *(undefined4 *)(puVar29 + -0x30) = 4;
                *(undefined4 *)(puVar29 + -0x34) = 0x19082;
                uVar11 = FUN_00020540();
                puVar33 = puVar29 + -0x28;
                *(undefined4 *)(puVar29 + -0x28) = 5;
                pcVar20 = "setting permissions for %s";
                goto LAB_00016f90;
              }
            }
            if (*local_21c == (code)0x0) {
              *(__ino_t *)(puVar29 + -0x30) = local_154.st_dev._4_4_;
              *(byte **)(puVar29 + -0x34) = (byte *)local_154.st_dev;
              *(uint *)(puVar29 + -0x38) = local_154.st_ino._4_4_;
              *(int *)(puVar29 + -0x3c) = (int)local_154.st_ino;
              *(char **)(puVar29 + -0x40) = local_1f8;
              *(undefined4 *)(puVar29 + -0x44) = 0x18c19;
              FUN_0001a5c0();
              *local_21c = (code)0x1;
            }
            if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
              if ((char)local_1f0[6] == '\0') {
                *(undefined4 *)(puVar29 + -0x24) = 0x18d28;
                FUN_00014d30();
              }
              else {
                *(char **)(puVar29 + -0x2c) = local_1f8;
                *(undefined4 *)(puVar29 + -0x30) = 4;
                *(undefined4 *)(puVar29 + -0x34) = 0x171ff;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -0x28) = 5;
                *(char **)(puVar29 + -0x2c) = "created directory %s\n";
                *(undefined4 *)(puVar29 + -0x30) = 0;
                *(undefined4 *)(puVar29 + -0x34) = 0x17214;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x28) = uVar11;
                *(undefined4 *)(puVar29 + -0x2c) = uVar12;
                *(undefined4 *)(puVar29 + -0x30) = 1;
                *(undefined4 *)(puVar29 + -0x34) = 0x17220;
                __printf_chk();
              }
            }
          }
          puVar34 = puVar29 + -0x20;
          bVar25 = local_22c != (__ino_t *)0x0 & *(byte *)(local_1f0 + 7);
          uVar9 = (uint)bVar25;
          if ((bVar25 == 0) ||
             (local_22c[1] == local_1b4._4_4_ && (byte *)*local_22c == (byte *)local_1b4._0_4_)) {
            local_240 = &local_94;
            piVar14 = local_1f0;
            psVar26 = local_240;
            for (iVar10 = 0x11; iVar10 != 0; iVar10 = iVar10 + -1) {
              *(int *)&psVar26->st_dev = *piVar14;
              piVar14 = piVar14 + (uint)bVar40 * -2 + 1;
              psVar26 = (stat64 *)((int)psVar26 + (uint)bVar40 * -8 + 4);
            }
            *(undefined4 *)(puVar29 + -0x2c) = 2;
            *(char **)(puVar29 + -0x30) = local_200;
            *(undefined4 *)(puVar29 + -0x34) = 0x1726d;
            pcVar20 = (char *)FUN_000212f0();
            local_230 = pcVar20;
            if (pcVar20 == (char *)0x0) {
              *(char **)(puVar29 + -0x2c) = local_200;
              *(undefined4 *)(puVar29 + -0x30) = 4;
              *(undefined4 *)(puVar29 + -0x34) = 0x19153;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -0x28) = 5;
              *(char **)(puVar29 + -0x2c) = "cannot access %s";
              *(undefined4 *)(puVar29 + -0x30) = 0;
              *(undefined4 *)(puVar29 + -0x34) = 0x19168;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x34) = 0x1916f;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar29 + -0x34) = uVar11;
              *(undefined4 *)(puVar29 + -0x38) = uVar12;
              *(int *)(puVar29 + -0x3c) = *piVar14;
              *(undefined4 *)(puVar29 + -0x40) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x44) = &UNK_0001917c;
              error();
            }
            if (local_1f0[1] == 3) {
              local_94.st_dev._4_4_ = 2;
            }
            if (*pcVar20 == '\0') {
              local_228 = (int *)((uint)local_228._1_3_ << 8);
              uVar9 = 1;
            }
            else {
              local_20c = local_1b4;
              local_228 = (int *)((uint)local_228._1_3_ << 8);
              local_234 = (stat64 *)local_f4;
              local_22c = &local_1d4;
              local_224 = CONCAT31(local_224._1_3_,1);
              do {
                *(undefined4 *)(puVar29 + -0x28) = 0;
                *(char **)(puVar29 + -0x2c) = pcVar20;
                *(char **)(puVar29 + -0x30) = local_200;
                *(undefined4 *)(puVar29 + -0x34) = 0x1731f;
                ppbVar17 = (byte **)FUN_0001d480();
                *(undefined4 *)(puVar29 + -0x28) = 0;
                *(char **)(puVar29 + -0x2c) = pcVar20;
                *(char **)(puVar29 + -0x30) = local_1f8;
                local_214 = ppbVar17;
                *(undefined4 *)(puVar29 + -0x34) = 0x17336;
                uVar11 = FUN_0001d480();
                cVar1 = *local_21c;
                *(undefined4 *)(puVar29 + -0x28) = 0;
                *(__ino_t **)(puVar29 + -0x2c) = local_22c;
                *(stat64 **)(puVar29 + -0x30) = local_234;
                *(undefined4 *)(puVar29 + -0x34) = 0;
                *(stat64 **)(puVar29 + -0x38) = local_240;
                *(stat64 **)(puVar29 + -0x3c) = local_238;
                *(byte **)(puVar29 + -0x40) = local_20c;
                local_f4[0] = (byte)cVar1;
                *(undefined4 *)(puVar29 + -0x44) = 0x1737f;
                bVar40 = MASKED();
                local_224 = CONCAT31(local_224._1_3_,(byte)local_224 & bVar40);
                *local_220 = (code)((byte)*local_220 | (byte)local_1d4);
                *(undefined4 *)(puVar29 + -0x30) = uVar11;
                *(undefined4 *)(puVar29 + -0x34) = 0x1739d;
                free(*(void **)(puVar29 + -0x30));
                *(byte ***)(puVar29 + -0x30) = local_214;
                *(undefined4 *)(puVar29 + -0x34) = 0x173a9;
                free(*(void **)(puVar29 + -0x30));
                if ((byte)local_1d4 != '\0') break;
                local_228 = (int *)CONCAT31(local_228._1_3_,(byte)local_228._0_1_ | local_f4[0]);
                *(char **)(puVar29 + -0x30) = pcVar20;
                *(undefined4 *)(puVar29 + -0x34) = 0x172fe;
                sVar16 = strlen(*(char **)(puVar29 + -0x30));
                pcVar20 = pcVar20 + sVar16 + 1;
              } while (*pcVar20 != '\0');
              uVar9 = local_224 & 0xff;
            }
            *(char **)(puVar29 + -0x30) = local_230;
            *(undefined4 *)(puVar29 + -0x34) = 0x173ce;
            free(*(void **)(puVar29 + -0x30));
            *local_21c = local_228._0_1_;
          }
          if ((byte)local_1fc != '\0') {
            bVar25 = 0;
            local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);
            bVar40 = 0;
            local_224 = CONCAT31(local_224._1_3_,(char)uVar9);
LAB_00016722:
            if (local_1f0[0xf] != 0) {
              local_1fc = CONCAT31(local_1fc._1_3_,bVar40);
              *(stat64 **)(puVar34 + -8) = &local_94;
              *(char **)(puVar34 + -0xc) = local_1f8;
              *(undefined4 *)(puVar34 + -0x10) = 3;
              *(undefined4 *)(puVar34 + -0x14) = 0x1674c;
              iVar10 = __lxstat64(*(int *)(puVar34 + -0x10),*(char **)(puVar34 + -0xc),
                                  *(stat64 **)(puVar34 + -8));
              piVar14 = local_1f0;
              bVar40 = (byte)local_1fc;
              if (iVar10 == 0) {
                *(stat64 **)(puVar34 + -8) = &local_94;
                *(char **)(puVar34 + -0xc) = local_1f8;
                *(int *)(puVar34 + -0x10) = piVar14[0xf];
                *(undefined4 *)(puVar34 + -0x14) = 0x16772;
                FUN_0001d1d0();
                bVar40 = (byte)local_1fc;
              }
            }
            uVar9 = local_224 & 0xff;
            local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);
            puVar29 = puVar34;
            goto LAB_00016794;
          }
          local_208 = (undefined1 *)((uint)local_208._1_3_ << 8);
          local_224 = CONCAT31(local_224._1_3_,(undefined1)local_24c);
          puVar29 = puVar29 + -0x20;
        }
        else {
LAB_0001664e:
          local_208 = (undefined1 *)CONCAT31(local_208._1_3_,(char)local_1f0[0xb]);
          puVar34 = puVar29;
          if ((char)local_1f0[0xb] != '\0') {
            if (*local_200 != '/') {
              uVar38 = puVar29 < (undefined1 *)0xc;
              uVar39 = puVar29 == (undefined1 *)0xc;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x1667f;
              pbVar13 = (byte *)FUN_0001cf20();
              iVar10 = 2;
              pbVar35 = &DAT_0002c142;
              pbVar36 = pbVar13;
              do {
                if (iVar10 == 0) break;
                iVar10 = iVar10 + -1;
                uVar38 = *pbVar35 < *pbVar36;
                uVar39 = *pbVar35 == *pbVar36;
                pbVar35 = pbVar35 + (uint)bVar40 * -2 + 1;
                pbVar36 = pbVar36 + (uint)bVar40 * -2 + 1;
              } while ((bool)uVar39);
              if ((!(bool)uVar38 && !(bool)uVar39) != (bool)uVar38) {
                local_20c = pbVar13;
                *(undefined1 **)(puVar29 + -8) = local_f4;
                *(undefined1 **)(puVar29 + -0xc) = &DAT_0002c142;
                *(undefined4 *)(puVar29 + -0x10) = 3;
                *(undefined4 *)(puVar29 + -0x14) = 0x17ae0;
                iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                   *(stat64 **)(puVar29 + -8));
                pbVar13 = local_20c;
                if (iVar10 == 0) {
                  *(stat64 **)(puVar29 + -8) = &local_94;
                  *(byte **)(puVar29 + -0xc) = pbVar13;
                  *(undefined4 *)(puVar29 + -0x10) = 3;
                  *(undefined4 *)(puVar29 + -0x14) = 0x17b03;
                  iVar10 = __xstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                     *(stat64 **)(puVar29 + -8));
                  pbVar13 = local_20c;
                  if ((iVar10 == 0) &&
                     (((local_98 != local_94.st_ino._4_4_ || local_9c != (int)local_94.st_ino ||
                       (local_f4._4_4_ != local_94.st_dev._4_4_)) ||
                      ((byte *)local_f4._0_4_ != (byte *)local_94.st_dev)))) {
                    *(byte **)(puVar29 + -0x10) = local_20c;
                    *(undefined4 *)(puVar29 + -0x14) = 0x17b37;
                    free(*(void **)(puVar29 + -0x10));
                    *(char **)(puVar29 + -8) = local_1f8;
                    *(undefined4 *)(puVar29 + -0xc) = 3;
                    *(undefined4 *)(puVar29 + -0x10) = 0;
                    *(undefined4 *)(puVar29 + -0x14) = 0x17b49;
                    uVar11 = FUN_00020700();
                    *(undefined4 *)(puVar29 + -8) = 5;
                    pcVar20 = "%s: can make relative symbolic links only in current directory";
LAB_00016e8b:
                    *(char **)(puVar29 + -0xc) = pcVar20;
                    *(undefined4 *)(puVar29 + -0x10) = 0;
                    *(undefined4 *)(puVar29 + -0x14) = 0x16e93;
                    uVar12 = dcgettext();
                    *(undefined4 *)(puVar29 + -0x14) = uVar11;
                    *(undefined4 *)(puVar29 + -0x18) = uVar12;
                    *(undefined4 *)(puVar29 + -0x1c) = 0;
                    *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                    *(undefined **)(puVar29 + -0x24) = &UNK_00016e9e;
                    error();
                  }
                }
              }
              *(byte **)(puVar29 + -0x10) = pbVar13;
              *(undefined4 *)(puVar29 + -0x14) = 0x166ac;
              free(*(void **)(puVar29 + -0x10));
            }
            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);
            *(char **)(puVar29 + -8) = local_1f8;
            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;
            *(char **)(puVar29 + -0x10) = local_200;
            *(undefined4 *)(puVar29 + -0x14) = 0x166cf;
            iVar10 = FUN_0001ade0();
            bVar25 = 0;
            if (iVar10 < 0) {
              *(char **)(puVar29 + -8) = local_200;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 1;
              *(undefined4 *)(puVar29 + -0x14) = 0x1898c;
              uVar11 = FUN_000203c0();
              *(char **)(puVar29 + -8) = local_1f8;
              *(undefined4 *)(puVar29 + -0xc) = 4;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              local_1f4 = (char *)uVar11;
              *(undefined4 *)(puVar29 + -0x14) = 0x189a4;
              uVar11 = FUN_000203c0();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s to %s";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x189b9;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = 0x189c0;
              piVar14 = __errno_location();
              *(char **)(puVar29 + -0x10) = local_1f4;
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_000189d4;
              error();
            }
            goto LAB_000166da;
          }
          if (*(char *)((int)local_1f0 + 0x17) != '\0') {
            *(byte **)(puVar29 + -0xc) = local_20c;
            bVar25 = 0;
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x18382;
            bVar40 = FUN_00014f10();
joined_r0x00018387:
            if (bVar40 != 0) goto LAB_000166da;
LAB_00016fad:
            puVar29 = puVar34;
            if (*(char *)((int)local_1f0 + 0x25) != '\0') {
LAB_000177a0:
              *(undefined4 *)(puVar29 + -4) = 0x177a5;
              FUN_00015060();
            }
            if (local_214 == (byte **)0x0) {
              *(undefined4 *)(puVar29 + -4) = local_1b4._4_4_;
              *(undefined4 *)(puVar29 + -8) = local_1b4._0_4_;
              *(uint *)(puVar29 + -0xc) = local_158;
              *(int *)(puVar29 + -0x10) = local_15c;
              *(undefined4 *)(puVar29 + -0x14) = 0x18325;
              FUN_0001a4c0();
            }
            goto LAB_00016fcb;
          }
          if ((local_238 == (stat64 *)0x8000) ||
             ((local_238 != (stat64 *)0xa000 & *(byte *)(local_1f0 + 5)) != 0)) {
            local_244 = local_1b4._16_4_;
            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(undefined1 *)((int)local_1f0 + 0x23));
            *(uint *)(puVar29 + -0xc) = (uint)(local_1f0[1] == 2) << 0x11;
            *(char **)(puVar29 + -0x10) = local_200;
            *(undefined4 *)(puVar29 + -0x14) = 0x17b97;
            local_208 = (undefined1 *)FUN_0001d190();
            if ((int)local_208 < 0) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18d03;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -8;
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "cannot open %s for reading";
              goto LAB_00016f90;
            }
            *(undefined1 **)(puVar29 + -8) = local_f4;
            *(undefined1 **)(puVar29 + -0xc) = local_208;
            *(undefined4 *)(puVar29 + -0x10) = 3;
            *(undefined4 *)(puVar29 + -0x14) = 0x17bbf;
            iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),
                                *(stat64 **)(puVar29 + -8));
            piVar14 = local_1f0;
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18f4d;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "cannot fstat %s";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x18f62;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = 0x18f69;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
              goto LAB_00018b73;
            }
            if ((local_158 != local_98 || local_15c != local_9c) ||
               (local_1b4._4_4_ != local_f4._4_4_ || local_1b4._0_4_ != local_f4._0_4_)) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18b5a;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "skipping file %s, as it was replaced while being copied"
              ;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x18b6f;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(undefined4 *)(puVar29 + -0x1c) = 0;
              goto LAB_00018b73;
            }
            local_284 = (uint)local_234 & 0x1ff;
            if ((byte)local_1f4 != '\0') {
LAB_00019094:
              local_278 = local_23c;
LAB_000190a0:
              pcVar19 = (code *)(~local_278 & local_284);
              *(code **)(puVar29 + -8) = pcVar19;
              *(undefined4 *)(puVar29 + -0xc) = 0xc1;
              *(char **)(puVar29 + -0x10) = local_1f8;
              local_21c = pcVar19;
              *(undefined4 *)(puVar29 + -0x14) = 0x190c8;
              piVar14 = (int *)FUN_0001d190();
              local_228 = piVar14;
              *(undefined4 *)(puVar29 + -0x14) = 0x190d5;
              local_220 = (code *)__errno_location();
              iVar10 = *(int *)local_220;
              bVar25 = iVar10 == 0x11 & (byte)((uint)piVar14 >> 0x1f);
              local_22c = (__ino_t *)CONCAT31(local_22c._1_3_,bVar25);
              if (bVar25 == 0) {
LAB_00019445:
                bVar25 = iVar10 == 0x15 & (byte)((uint)local_228 >> 0x1f);
                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar25);
                if (bVar25 == 0) {
                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,1);
                  if (-1 < (int)local_228) {
LAB_00017c81:
                    *(stat64 **)(puVar29 + -8) = &local_94;
                    *(int **)(puVar29 + -0xc) = local_228;
                    *(undefined4 *)(puVar29 + -0x10) = 3;
                    local_240 = &local_94;
                    *(undefined4 *)(puVar29 + -0x14) = 0x17c9e;
                    iVar10 = __fxstat64(*(int *)(puVar29 + -0x10),*(int *)(puVar29 + -0xc),
                                        *(stat64 **)(puVar29 + -8));
                    if (iVar10 != 0) {
                      *(int *)(puVar29 + -4) = iVar10;
                      *(int *)(puVar29 + -8) = iVar10;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(undefined4 *)(puVar29 + -0x10) = 4;
                      *(undefined4 *)(puVar29 + -0x14) = 0x198f9;
                      uVar11 = FUN_00020540();
                      *(undefined4 *)(puVar29 + -8) = 5;
                      *(char **)(puVar29 + -0xc) = "cannot fstat %s";
                      *(undefined4 *)(puVar29 + -0x10) = 0;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1990e;
                      uVar12 = dcgettext();
                      *(undefined4 *)(puVar29 + -0x14) = 0x19915;
                      piVar14 = __errno_location();
                      *(undefined4 *)(puVar29 + -0x14) = uVar11;
                      *(undefined4 *)(puVar29 + -0x18) = uVar12;
                      *(int *)(puVar29 + -0x1c) = *piVar14;
                      *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                      *(undefined **)(puVar29 + -0x24) = &UNK_00019922;
                      error();
                    }
                    uVar11 = extraout_ECX;
                    if ((byte)local_20c != '\0') {
                      if (local_1f0[0xe] != 0) {
                        *(int **)(puVar29 + -4) = local_1f0;
                        *(undefined1 **)(puVar29 + -8) = local_208;
                        *(undefined4 *)(puVar29 + -0xc) = 0x40049409;
                        *(int **)(puVar29 + -0x10) = local_228;
                        *(undefined4 *)(puVar29 + -0x14) = 0x19d52;
                        iVar10 = ioctl(*(int *)(puVar29 + -0x10),*(ulong *)(puVar29 + -0xc));
                        uVar11 = extraout_ECX_11;
                        if (iVar10 == 0) goto LAB_000194e2;
                        if (local_1f0[0xe] == 2) {
                          *(int **)(puVar29 + -4) = local_1f0;
                          *(char **)(puVar29 + -8) = local_200;
                          *(undefined4 *)(puVar29 + -0xc) = 4;
                          *(undefined4 *)(puVar29 + -0x10) = 1;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19d7d;
                          uVar11 = FUN_000203c0();
                          *(char **)(puVar29 + -8) = local_1f8;
                          *(undefined4 *)(puVar29 + -0xc) = 4;
                          *(undefined4 *)(puVar29 + -0x10) = 0;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19d91;
                          local_20c = (byte *)FUN_000203c0();
                          *(undefined4 *)(puVar29 + -8) = 5;
                          *(char **)(puVar29 + -0xc) = "failed to clone %s from %s";
                          *(undefined4 *)(puVar29 + -0x10) = 0;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19daa;
                          uVar12 = dcgettext();
                          *(undefined4 *)(puVar29 + -0x14) = 0x19db1;
                          piVar14 = __errno_location();
                          pbVar13 = local_20c;
                          *(undefined4 *)(puVar29 + -0x10) = uVar11;
                          *(byte **)(puVar29 + -0x14) = pbVar13;
                          *(undefined4 *)(puVar29 + -0x18) = uVar12;
                          *(int *)(puVar29 + -0x1c) = *piVar14;
                          *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                          *(undefined **)(puVar29 + -0x24) = &UNK_00019dc7;
                          error();
                        }
                      }
                      *(undefined4 *)(puVar29 + -4) = 0x17ccd;
                      uVar9 = getpagesize();
                      local_25c = (code *)local_94.st_blksize;
                      local_258 = (code *)local_94.st_blksize;
                      pcVar19 = (code *)(local_94.st_blksize + -0x20000);
                      if ((code *)0x1ffe0000 < (code *)(local_94.st_blksize + -0x20000)) {
                        local_258 = FUN_00020000;
                        local_25c = (code *)0x200;
                        pcVar19 = local_25c;
                        if ((code *)(local_94.st_blksize + -1) < (code *)0x20000000) {
                          pcVar19 = (code *)local_94.st_blksize;
                          local_25c = (code *)local_94.st_blksize;
                        }
                      }
                      *(code **)(puVar29 + -4) = pcVar19;
                      *(code **)(puVar29 + -8) = pcVar19;
                      *(undefined4 *)(puVar29 + -0xc) = 2;
                      *(undefined4 *)(puVar29 + -0x10) = 0;
                      *(undefined4 *)(puVar29 + -0x14) = 0;
                      *(undefined4 *)(puVar29 + -0x18) = 0;
                      *(undefined4 *)(puVar29 + -0x1c) = 0;
                      *(undefined1 **)(puVar29 + -0x20) = local_208;
                      *(undefined4 *)(puVar29 + -0x24) = 0x17d28;
                      FUN_0001d110();
                      local_21c = (code *)(local_f4._16_4_ & 0xf000);
                      bVar3 = false;
                      if (local_21c == (code *)0x8000) {
                        uVar22 = local_c4 >> 0x1f & 0x1ff;
                        iVar10 = local_c4 + (uint)CARRY4(uVar22,local_f4._44_4_);
                        iVar8 = iVar10 >> 9;
                        uVar22 = (uint)(local_bc <
                                       ((uint)(local_f4._44_4_ + uVar22) >> 9 | iVar10 * 0x800000));
                        iVar10 = local_b8 - iVar8;
                        bVar3 = (SBORROW4(local_b8,iVar8) != SBORROW4(iVar10,uVar22)) !=
                                (int)(iVar10 - uVar22) < 0;
                      }
                      local_220 = (code *)(uVar9 - 1);
                      if ((local_94.st_mode & 0xf000) == 0x8000) {
                        if (local_1f0[3] != 3) {
                          if ((local_1f0[3] == 2) && (bVar3)) {
                            *(code **)(puVar29 + -0x10) = local_258 + uVar9;
                            *(undefined4 *)(puVar29 + -0x14) = 0x199e0;
                            local_220 = (code *)FUN_00022ed0();
                            local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -
                                        (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;
                            goto LAB_000199fc;
                          }
                          goto LAB_00017d9d;
                        }
                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;
                        *(undefined4 *)(puVar29 + -0x14) = 0x19f62;
                        local_220 = (code *)FUN_00022ed0();
                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -
                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;
                        if (bVar3) {
LAB_000199fc:
                          local_274 = local_1f0[3];
                          local_285 = (byte)local_20c;
                          goto LAB_00019a18;
                        }
                        local_22c = &local_1d4;
                        uVar9 = (uint)(local_1f0[3] == 3);
                      }
                      else {
LAB_00017d9d:
                        iVar10 = local_c0;
                        if (0x1ffe0000 < local_c0 - 0x20000U) {
                          iVar10 = 0x20000;
                        }
                        local_220 = (code *)(0x7fffffff - uVar9);
                        *(undefined4 *)(puVar29 + -4) = 0x20000;
                        *(code **)(puVar29 + -8) = (code *)(0x7fffffff - uVar9);
                        *(code **)(puVar29 + -0xc) = local_258;
                        *(int *)(puVar29 + -0x10) = iVar10;
                        *(undefined4 *)(puVar29 + -0x14) = 0x17dd4;
                        pcVar19 = (code *)FUN_0001c430();
                        if ((local_21c == (code *)0x8000) &&
                           (local_c4 < (int)(uint)((uint)local_f4._44_4_ < local_258))) {
                          local_258 = (code *)(local_f4._44_4_ + 1);
                        }
                        local_21c = pcVar19 + -1 + (int)local_258;
                        local_258 = local_21c + -((uint)local_21c % (uint)pcVar19);
                        if ((local_258 == (code *)0x0) || (local_220 < local_258)) {
                          local_258 = pcVar19;
                        }
                        *(code **)(puVar29 + -0x10) = local_258 + uVar9;
                        *(undefined4 *)(puVar29 + -0x14) = 0x17e2e;
                        local_220 = (code *)FUN_00022ed0();
                        local_27c = (int)((byte *)local_220 + (uVar9 - 1)) -
                                    (uint)((byte *)local_220 + (uVar9 - 1)) % uVar9;
                        if (bVar3) {
                          local_285 = '\0';
                          local_274 = 1;
LAB_00019a18:
                          pcVar19 = (code *)0x0;
                          iVar10 = 0;
                          local_21c = (code *)local_f4._44_4_;
                          *(undefined4 *)(puVar29 + -4) = local_f4._44_4_;
                          *(undefined4 *)(puVar29 + -8) = local_f4._44_4_;
                          *(__ino_t **)(puVar29 + -0xc) = &local_1d4;
                          *(undefined1 **)(puVar29 + -0x10) = local_208;
                          local_218 = local_c4;
                          local_22c = &local_1d4;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19a4e;
                          FUN_0001a6d0();
                          local_254 = (code *)0x0;
                          local_250 = 0;
                          local_24c = 0;
                          local_248 = 0;
                          local_280 = ppuVar28;
                          do {
                            *(__ino_t **)(puVar29 + -0x10) = local_22c;
                            *(undefined4 *)(puVar29 + -0x14) = 0x19a93;
                            uVar12 = FUN_0001a710();
                            ppuVar28 = local_280;
                            if ((char)uVar12 == '\0') {
                              uVar11 = extraout_ECX_10;
                              if (local_1bf == '\0') {
                                if (local_1c0 == '\0') {
                                  *(undefined4 *)(puVar29 + -4) = uVar12;
                                  *(char **)(puVar29 + -8) = local_200;
                                  *(undefined4 *)(puVar29 + -0xc) = 3;
                                  *(undefined4 *)(puVar29 + -0x10) = 0;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x1a1b5;
                                  uVar11 = FUN_00020700();
                                  *(undefined4 *)(puVar29 + -8) = 5;
                                  ppuVar28 = ppuVar28 + -0x2aaf;
                                  goto LAB_00019fe6;
                                }
                                pcVar19 = (code *)0x0;
                                if (local_285 != '\0') {
                                  pcVar19 = local_25c;
                                }
                                uVar9 = (uint)(local_1f0[3] == 3);
                                local_25c = pcVar19;
                                goto LAB_00017e78;
                              }
                              break;
                            }
                            if (local_1c4 != (stat64 *)0x0) {
                              local_234 = (stat64 *)0x0;
                              local_26c = pcVar19;
                              local_264 = local_24c;
                              local_260 = local_248;
                              local_268 = iVar10;
                              do {
                                puVar37 = (undefined4 *)(local_1bc + (int)local_234 * 0x14);
                                pcVar19 = (code *)*puVar37;
                                iVar10 = puVar37[1];
                                local_24c = puVar37[2];
                                local_248 = puVar37[3];
                                iVar27 = puVar37[3] + iVar10 + (uint)CARRY4(local_24c,(uint)pcVar19)
                                ;
                                iVar8 = local_218 - iVar27;
                                if ((SBORROW4(local_218,iVar27) !=
                                    SBORROW4(iVar8,(uint)(local_21c < pcVar19 + local_24c))) !=
                                    (int)(iVar8 - (uint)(local_21c < pcVar19 + local_24c)) < 0) {
                                  if ((SBORROW4(local_218,iVar10) !=
                                      SBORROW4(local_218 - iVar10,(uint)(local_21c < pcVar19))) !=
                                      (int)((local_218 - iVar10) - (uint)(local_21c < pcVar19)) < 0)
                                  {
                                    pcVar19 = local_21c;
                                    iVar10 = local_218;
                                  }
                                  local_24c = (int)local_21c - (int)pcVar19;
                                  local_248 = (local_218 - iVar10) - (uint)(local_21c < pcVar19);
                                }
                                local_254 = (code *)(((int)pcVar19 - (int)local_26c) - local_264);
                                local_250 = (((iVar10 - local_268) - (uint)(pcVar19 < local_26c)) -
                                            local_260) -
                                            (uint)((uint)((int)pcVar19 - (int)local_26c) < local_264
                                                  );
                                local_20c = (byte *)((uint)local_20c & 0xffffff00);
                                if (local_250 != 0 || local_254 != (code *)0x0) {
                                  *(undefined4 *)(puVar29 + -4) = 0;
                                  *(int *)(puVar29 + -8) = iVar10;
                                  *(code **)(puVar29 + -0xc) = pcVar19;
                                  *(undefined1 **)(puVar29 + -0x10) = local_208;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ca8;
                                  _Var41 = lseek64(*(int *)(puVar29 + -0x10),
                                                   *(__off64_t *)(puVar29 + -0xc),
                                                   *(int *)(puVar29 + -4));
                                  if (_Var41 < 0) {
                                    *(int *)(puVar29 + -4) = iVar10;
                                    ppuVar28 = local_280;
                                    *(int *)(puVar29 + -8) = iVar10;
                                    *(char **)(puVar29 + -0xc) = local_200;
                                    *(undefined4 *)(puVar29 + -0x10) = 4;
                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f22;
                                    uVar11 = FUN_00020540();
                                    *(undefined4 *)(puVar29 + -8) = 5;
                                    ppuVar28 = (undefined **)((int)ppuVar28 + -0xb20b);
LAB_00019f2f:
                                    *(undefined ***)(puVar29 + -0xc) = ppuVar28;
                                    *(undefined4 *)(puVar29 + -0x10) = 0;
                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f37;
                                    uVar12 = dcgettext();
                                    *(undefined4 *)(puVar29 + -0x14) = 0x19f3e;
                                    piVar14 = __errno_location();
                                    *(undefined4 *)(puVar29 + -0x14) = uVar11;
                                    *(undefined4 *)(puVar29 + -0x18) = uVar12;
                                    *(int *)(puVar29 + -0x1c) = *piVar14;
                                    *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                                    *(undefined **)(puVar29 + -0x24) = &UNK_00019f49;
                                    error();
                                  }
                                  if (local_274 == 1) {
                                    *(undefined4 *)(puVar29 + -4) = 0x19d2c;
                                    cVar6 = FUN_000149e0();
                                    if (cVar6 == '\0') {
                                      *(code **)(puVar29 + -4) = pcVar19;
                                      ppuVar28 = local_280;
                                      *(char **)(puVar29 + -8) = local_1f8;
                                      *(undefined4 *)(puVar29 + -0xc) = 3;
                                      *(undefined4 *)(puVar29 + -0x10) = 0;
                                      *(undefined4 *)(puVar29 + -0x14) = 0x1a193;
                                      uVar11 = FUN_00020700();
                                      *(undefined4 *)(puVar29 + -8) = 5;
                                      ppuVar28 = ppuVar28 + -0x2c19;
                                      goto LAB_00019f2f;
                                    }
                                    pcVar24 = (code *)0x0;
                                    goto LAB_00019af3;
                                  }
                                  *(int *)(puVar29 + -0xc) = local_250;
                                  *(code **)(puVar29 + -0x10) = local_254;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x19ce6;
                                  cVar6 = FUN_000150b0();
                                  local_20c = (byte *)CONCAT31(local_20c._1_3_,cVar6);
                                  if (cVar6 != '\0') goto LAB_00019ae0;
LAB_00019cf7:
                                  ppuVar28 = local_280;
                                  *(int *)(puVar29 + -0x10) = local_1bc;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x19d0d;
                                  free(*(void **)(puVar29 + -0x10));
                                  bVar25 = 0;
                                  goto LAB_00018028;
                                }
LAB_00019ae0:
                                pcVar24 = (code *)0x0;
                                if (local_274 == 3) {
                                  pcVar24 = local_25c;
                                }
LAB_00019af3:
                                *(undefined1 **)(puVar29 + -0x10) = &local_1dd;
                                *(uint **)(puVar29 + -0x14) = &local_1dc;
                                *(int *)(puVar29 + -0x18) = local_248;
                                *(uint *)(puVar29 + -0x1c) = local_24c;
                                *(char **)(puVar29 + -0x20) = local_1f8;
                                *(char **)(puVar29 + -0x24) = local_200;
                                *(undefined4 *)(puVar29 + -0x28) = 1;
                                *(code **)(puVar29 + -0x2c) = pcVar24;
                                *(code **)(puVar29 + -0x30) = local_258;
                                *(undefined4 *)(puVar29 + -0x34) = 0x19b3c;
                                cVar6 = FUN_000151c0();
                                if (cVar6 == '\0') goto LAB_00019cf7;
                                local_250 = iVar10 + local_1d8 +
                                            (uint)CARRY4((uint)pcVar19,local_1dc);
                                local_254 = pcVar19 + local_1dc;
                                uVar38 = (byte)local_20c;
                                if (local_1d8 != 0 || local_1dc != 0) {
                                  uVar38 = local_1dd;
                                }
                                local_20c = (byte *)CONCAT31(local_20c._1_3_,uVar38);
                                if (local_250 == local_218 && pcVar19 + local_1dc == local_21c) {
                                  local_1bf = '\x01';
                                  break;
                                }
                                local_26c = pcVar19;
                                local_234 = (stat64 *)((int)&local_234->st_dev + 1);
                                local_268 = iVar10;
                                local_264 = local_24c;
                                local_260 = local_248;
                              } while (local_234 < local_1c4);
                            }
                            *(int *)(puVar29 + -0x10) = local_1bc;
                            *(undefined4 *)(puVar29 + -0x14) = 0x1969a;
                            free(*(void **)(puVar29 + -0x10));
                            local_1bc = 0;
                            local_1c4 = (stat64 *)0x0;
                            uVar11 = extraout_ECX_05;
                          } while (local_1bf == '\0');
                          ppuVar28 = local_280;
                          bVar3 = true;
                          if ((SBORROW4(local_250,local_218) !=
                              SBORROW4(local_250 - local_218,(uint)(local_254 < local_21c))) ==
                              (int)((local_250 - local_218) - (uint)(local_254 < local_21c)) < 0) {
                            bVar3 = false;
                            if ((byte)local_20c == '\0') goto LAB_00017ed4;
                          }
                          if (local_274 == 1) {
                            *(undefined4 *)(puVar29 + -4) = 0x1a279;
                            iVar10 = FUN_000149e0();
                            uVar11 = extraout_ECX_14;
                            if ((char)iVar10 == '\0') goto LAB_00019fca;
                          }
                          else {
                            *(undefined4 *)(puVar29 + -4) = uVar11;
                            *(int *)(puVar29 + -8) = local_218;
                            *(code **)(puVar29 + -0xc) = local_21c;
                            *(int **)(puVar29 + -0x10) = local_228;
                            *(undefined4 *)(puVar29 + -0x14) = 0x1971b;
                            iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),
                                                 *(__off64_t *)(puVar29 + -0xc));
                            pcVar24 = local_21c;
                            pcVar19 = local_254;
                            if (iVar10 != 0) goto LAB_00019fca;
                            uVar11 = extraout_ECX_06;
                            if ((local_274 == 3) && (bVar3)) {
                              *(undefined4 *)(puVar29 + -4) = extraout_EDX_00;
                              iVar10 = local_250;
                              *(undefined4 *)(puVar29 + -8) = extraout_EDX_00;
                              *(uint *)(puVar29 + -0xc) =
                                   (local_218 - iVar10) - (uint)(pcVar24 < pcVar19);
                              *(int *)(puVar29 + -0x10) = (int)pcVar24 - (int)pcVar19;
                              *(int *)(puVar29 + -0x14) = iVar10;
                              *(code **)(puVar29 + -0x18) = pcVar19;
                              *(undefined4 *)(puVar29 + -0x1c) = 3;
                              *(int **)(puVar29 + -0x20) = local_228;
                              *(undefined4 *)(puVar29 + -0x24) = 0x1976c;
                              iVar8 = fallocate64(*(int *)(puVar29 + -0x20),
                                                  *(int *)(puVar29 + -0x1c),
                                                  *(__off64_t *)(puVar29 + -0x18),
                                                  *(__off64_t *)(puVar29 + -0x10));
                              uVar11 = extraout_ECX_07;
                              if (iVar8 < 0) {
                                *(undefined4 *)(puVar29 + -4) = 0x1977c;
                                piVar14 = __errno_location();
                                uVar11 = extraout_ECX_08;
                                if ((*piVar14 != 0x26) && (*piVar14 != 0x5f)) {
                                  *(int *)(puVar29 + -4) = iVar10;
                                  *(int *)(puVar29 + -8) = iVar10;
                                  *(char **)(puVar29 + -0xc) = local_1f8;
                                  *(undefined4 *)(puVar29 + -0x10) = 4;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x197a1;
                                  uVar11 = FUN_00020540();
                                  *(undefined4 *)(puVar29 + -8) = 5;
                                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb1fb;
                                  *(undefined4 *)(puVar29 + -0x10) = 0;
                                  *(undefined4 *)(puVar29 + -0x14) = 0x197b6;
                                  uVar12 = dcgettext();
                                  *(undefined4 *)(puVar29 + -0x14) = uVar11;
                                  *(undefined4 *)(puVar29 + -0x18) = uVar12;
                                  *(int *)(puVar29 + -0x1c) = *piVar14;
                                  *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                                  *(undefined **)(puVar29 + -0x24) = &UNK_000197c1;
                                  error();
                                }
                              }
                            }
                          }
                          goto LAB_00017ed4;
                        }
                        local_22c = &local_1d4;
                        local_25c = (code *)0x0;
                        uVar9 = (uint)(local_1f0[3] == 3);
                      }
LAB_00017e78:
                      *(uint **)(puVar29 + -0x10) = &local_1dc;
                      *(__ino_t **)(puVar29 + -0x14) = local_22c;
                      *(undefined4 *)(puVar29 + -0x18) = 0xffffffff;
                      *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;
                      *(char **)(puVar29 + -0x20) = local_1f8;
                      *(char **)(puVar29 + -0x24) = local_200;
                      *(uint *)(puVar29 + -0x28) = uVar9;
                      *(code **)(puVar29 + -0x2c) = local_25c;
                      *(code **)(puVar29 + -0x30) = local_258;
                      *(undefined4 *)(puVar29 + -0x34) = 0x17ebc;
                      uVar12 = FUN_000151c0();
                      if ((char)uVar12 != '\0') {
                        uVar11 = extraout_ECX_00;
                        if ((char)local_1dc != '\0') {
                          *(undefined4 *)(puVar29 + -4) = uVar12;
                          *(undefined4 *)(puVar29 + -8) = local_1d0;
                          *(__ino_t *)(puVar29 + -0xc) = local_1d4;
                          *(int **)(puVar29 + -0x10) = local_228;
                          *(undefined4 *)(puVar29 + -0x14) = 0x19fbf;
                          iVar10 = ftruncate64(*(int *)(puVar29 + -0x10),
                                               *(__off64_t *)(puVar29 + -0xc));
                          uVar11 = extraout_ECX_13;
                          if (iVar10 < 0) {
LAB_00019fca:
                            *(int *)(puVar29 + -4) = iVar10;
                            *(int *)(puVar29 + -8) = iVar10;
                            *(char **)(puVar29 + -0xc) = local_1f8;
                            *(undefined4 *)(puVar29 + -0x10) = 4;
                            *(undefined4 *)(puVar29 + -0x14) = 0x19fd9;
                            uVar11 = FUN_00020540();
                            *(undefined4 *)(puVar29 + -8) = 5;
                            ppuVar28 = (undefined **)((int)ppuVar28 + -0xb053);
LAB_00019fe6:
                            *(undefined ***)(puVar29 + -0xc) = ppuVar28;
                            *(undefined4 *)(puVar29 + -0x10) = 0;
                            *(undefined4 *)(puVar29 + -0x14) = 0x19fee;
                            uVar12 = dcgettext();
                            *(undefined4 *)(puVar29 + -0x14) = 0x19ff5;
                            piVar14 = __errno_location();
                            *(undefined4 *)(puVar29 + -0x14) = uVar11;
                            *(undefined4 *)(puVar29 + -0x18) = uVar12;
                            *(int *)(puVar29 + -0x1c) = *piVar14;
                            *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                            *(undefined **)(puVar29 + -0x24) = &UNK_0001a002;
                            error();
                          }
                        }
                        goto LAB_00017ed4;
                      }
LAB_000197c4:
                      bVar25 = 0;
                      goto LAB_00018028;
                    }
LAB_000194e2:
                    local_220 = (code *)0x0;
LAB_00017ed4:
                    if (*(char *)((int)local_1f0 + 0x1f) != '\0') {
                      local_30 = local_174;
                      local_2c = local_170;
                      local_28 = local_16c;
                      local_24 = local_168;
                      *(long *)(puVar29 + -4) = local_168;
                      *(__time_t **)(puVar29 + -8) = &local_30;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(int **)(puVar29 + -0x10) = local_228;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1988f;
                      iVar10 = FUN_000220c0();
                      uVar11 = extraout_ECX_09;
                      if (iVar10 != 0) {
                        *(int *)(puVar29 + -4) = iVar10;
                        *(int *)(puVar29 + -8) = iVar10;
                        *(char **)(puVar29 + -0xc) = local_1f8;
                        *(undefined4 *)(puVar29 + -0x10) = 4;
                        *(undefined4 *)(puVar29 + -0x14) = 0x198a9;
                        uVar11 = FUN_00020540();
                        *(undefined4 *)(puVar29 + -8) = 5;
                        *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;
                        *(undefined4 *)(puVar29 + -0x10) = 0;
                        *(undefined4 *)(puVar29 + -0x14) = 0x198be;
                        uVar12 = dcgettext();
                        *(undefined4 *)(puVar29 + -0x14) = 0x198c5;
                        piVar14 = __errno_location();
                        *(undefined4 *)(puVar29 + -0x14) = uVar11;
                        *(undefined4 *)(puVar29 + -0x18) = uVar12;
                        *(int *)(puVar29 + -0x1c) = *piVar14;
                        *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                        *(undefined **)(puVar29 + -0x24) = &UNK_000198d0;
                        error();
                      }
                    }
                    if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&
                       ((local_1b4._24_4_ != local_94.st_uid ||
                        (local_94.st_uid = local_94.st_gid, local_1b4._28_4_ != local_94.st_gid))))
                    {
                      *(__uid_t *)(puVar29 + -4) = local_94.st_uid;
                      uVar9 = (uint)local_1f4 & 0xff;
                      *(stat64 **)(puVar29 + -8) = local_240;
                      *(uint *)(puVar29 + -0xc) = uVar9;
                      *(undefined1 **)(puVar29 + -0x10) = local_1b4;
                      *(undefined4 *)(puVar29 + -0x14) = 0x17f33;
                      iVar10 = FUN_00015b60();
                      if (iVar10 == -1) goto LAB_000197c4;
                      uVar11 = extraout_ECX_01;
                      if (iVar10 == 0) {
                        local_244 = local_244 & 0xfffff1ff;
                      }
                    }
                    if (*(char *)((int)local_1f0 + 0x27) == '\0') {
LAB_0001950b:
                      bVar25 = 1;
                    }
                    else {
                      piVar14 = local_1f0;
                      if ((local_94.st_mode & 0x80) == 0) {
                        *(undefined4 *)(puVar29 + -4) = 0x19e80;
                        piVar14 = (int *)geteuid();
                        piVar23 = local_228;
                        if (piVar14 == (int *)0x0) goto LAB_00017f67;
                        *(undefined4 *)(puVar29 + -4) = 0x19ea0;
                        iVar10 = FUN_00014ac0();
                        uVar12 = CONCAT31((int3)((uint)iVar10 >> 8),iVar10 == 0);
                        *(undefined4 *)(puVar29 + -4) = uVar12;
                        *(undefined4 *)(puVar29 + -8) = uVar12;
                        *(int **)(puVar29 + -0xc) = local_1f0;
                        *(int **)(puVar29 + -0x10) = piVar23;
                        *(undefined4 *)(puVar29 + -0x14) = 0x19ec7;
                        bVar25 = FUN_00014b00();
                        uVar11 = extraout_ECX_12;
                        if (bVar25 == 0) goto LAB_00017f99;
                      }
                      else {
LAB_00017f67:
                        *(int **)(puVar29 + -4) = piVar14;
                        *(int **)(puVar29 + -8) = piVar14;
                        *(int **)(puVar29 + -0xc) = local_1f0;
                        *(int **)(puVar29 + -0x10) = local_228;
                        *(undefined4 *)(puVar29 + -0x14) = 0x17f8c;
                        uVar12 = FUN_00014b00();
                        uVar11 = extraout_ECX_02;
                        if ((char)uVar12 != '\0') goto LAB_0001950b;
LAB_00017f99:
                        local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 10));
                        bVar25 = *(byte *)(local_1f0 + 10) ^ 1;
                      }
                      if ((char)uVar12 != '\0') {
                        *(undefined4 *)(puVar29 + -4) = 0x17fd3;
                        FUN_00014ac0();
                        uVar11 = extraout_ECX_03;
                      }
                    }
                    piVar14 = local_1f0;
                    if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0'))
                    {
                      if (*(char *)((int)local_1f0 + 0x2b) == '\0') {
                        bVar40 = (byte)local_1f4 & *(byte *)(local_1f0 + 8);
                        if (bVar40 == 0) {
                          if (local_278 != 0) {
                            *(undefined4 *)(puVar29 + -4) = 0x1a00f;
                            uVar9 = FUN_00015d90();
                            if ((local_278 & ~uVar9) != 0) {
                              *(undefined4 *)(puVar29 + -4) = 0x1a034;
                              iVar10 = FUN_00014ac0();
                              if (iVar10 != 0) {
                                *(int *)(puVar29 + -4) = iVar10;
                                *(int *)(puVar29 + -8) = iVar10;
                                *(char **)(puVar29 + -0xc) = local_1f8;
                                *(undefined4 *)(puVar29 + -0x10) = 4;
                                *(undefined4 *)(puVar29 + -0x14) = 0x1a04b;
                                local_21c = (code *)FUN_00020540();
                                *(undefined4 *)(puVar29 + -8) = 5;
                                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;
                                *(undefined4 *)(puVar29 + -0x10) = 0;
                                *(undefined4 *)(puVar29 + -0x14) = 0x1a064;
                                local_20c = (byte *)dcgettext();
                                *(undefined4 *)(puVar29 + -0x14) = 0x1a06f;
                                piVar14 = __errno_location();
                                pbVar13 = local_20c;
                                *(code **)(puVar29 + -0x14) = local_21c;
                                *(byte **)(puVar29 + -0x18) = pbVar13;
                                *(int *)(puVar29 + -0x1c) = *piVar14;
                                *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                                *(undefined **)(puVar29 + -0x24) = &UNK_0001a086;
                                error();
                              }
                            }
                          }
                        }
                        else {
                          local_20c = (byte *)((uint)local_20c & 0xffffff00);
                          *(undefined4 *)(puVar29 + -4) = 0x1a1d2;
                          uVar42 = FUN_00015d90();
                          *(int *)(puVar29 + -4) = (int)((ulonglong)uVar42 >> 0x20);
                          *(uint *)(puVar29 + -8) = ~(uint)uVar42 & 0x1b6;
                          *(int **)(puVar29 + -0xc) = local_228;
                          *(char **)(puVar29 + -0x10) = local_1f8;
                          *(undefined4 *)(puVar29 + -0x14) = 0x1a1ec;
                          iVar10 = FUN_0001b7d0();
                          local_1f4 = (char *)CONCAT31(local_1f4._1_3_,bVar40);
                          if (iVar10 != 0) {
                            bVar25 = (byte)local_20c;
                          }
                        }
                      }
                      else {
                        *(undefined4 *)(puVar29 + -4) = uVar11;
                        *(int *)(puVar29 + -8) = piVar14[4];
                        *(int **)(puVar29 + -0xc) = local_228;
                        *(char **)(puVar29 + -0x10) = local_1f8;
                        *(undefined4 *)(puVar29 + -0x14) = 0x1a0e8;
                        iVar10 = FUN_0001b7d0();
                        if (iVar10 != 0) {
                          bVar25 = 0;
                        }
                      }
                    }
                    else {
                      *(uint *)(puVar29 + -0x10) = local_244;
                      *(int **)(puVar29 + -0x14) = local_228;
                      *(char **)(puVar29 + -0x18) = local_1f8;
                      *(undefined1 **)(puVar29 + -0x1c) = local_208;
                      *(char **)(puVar29 + -0x20) = local_200;
                      *(undefined4 *)(puVar29 + -0x24) = 0x1961d;
                      iVar10 = FUN_0001b720();
                      if ((iVar10 != 0) && ((char)local_1f0[9] != '\0')) {
                        bVar25 = 0;
                      }
                    }
                    goto LAB_00018028;
                  }
                }
                else {
                  iVar10 = 0x15;
                  if (*local_1f8 != '\0') {
                    uVar9 = 0xffffffff;
                    pcVar20 = local_1f8;
                    do {
                      if (uVar9 == 0) break;
                      uVar9 = uVar9 - 1;
                      cVar6 = *pcVar20;
                      pcVar20 = pcVar20 + (uint)bVar40 * -2 + 1;
                    } while (cVar6 != '\0');
                    iVar10 = (local_1f8[~uVar9 - 2] != '/') + 0x14;
                  }
                }
              }
              else {
                iVar10 = 0x11;
                local_1f4 = (char *)CONCAT31(local_1f4._1_3_,(char)local_1f0[6]);
                if ((char)local_1f0[6] == '\0') {
                  *(uint *)(puVar29 + -4) = CONCAT31((int3)((uint)extraout_EDX >> 8),bVar25);
                  *(stat64 **)(puVar29 + -8) = &local_94;
                  *(char **)(puVar29 + -0xc) = local_1f8;
                  *(undefined4 *)(puVar29 + -0x10) = 3;
                  *(undefined4 *)(puVar29 + -0x14) = 0x193f6;
                  iVar8 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                     *(stat64 **)(puVar29 + -8));
                  if ((iVar8 == 0) && ((local_94.st_mode & 0xf000) == 0xa000)) {
                    uVar9 = (uint)*(byte *)(local_1f0 + 0xc);
                    if (*(byte *)(local_1f0 + 0xc) == 0) {
                      *(uint *)(puVar29 + -4) = uVar9;
                      *(uint *)(puVar29 + -8) = uVar9;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(undefined4 *)(puVar29 + -0x10) = 4;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1a217;
                      uVar11 = FUN_00020540();
                      *(undefined4 *)(puVar29 + -8) = 5;
                      *(char **)(puVar29 + -0xc) = "not writing through dangling symlink %s";
                      *(undefined4 *)(puVar29 + -0x10) = 0;
                      *(undefined4 *)(puVar29 + -0x14) = 0x1a22c;
                      uVar12 = dcgettext();
                      *(undefined4 *)(puVar29 + -0x14) = uVar11;
                      *(undefined4 *)(puVar29 + -0x18) = uVar12;
                      *(undefined4 *)(puVar29 + -0x1c) = 0;
                      *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                      *(undefined **)(puVar29 + -0x24) = &UNK_0001a237;
                      error();
                    }
                    *(uint *)(puVar29 + -4) = uVar9;
                    *(code **)(puVar29 + -8) = local_21c;
                    *(undefined4 *)(puVar29 + -0xc) = 0x41;
                    *(char **)(puVar29 + -0x10) = local_1f8;
                    *(undefined4 *)(puVar29 + -0x14) = 0x19434;
                    local_228 = (int *)FUN_0001d190();
                    iVar10 = *(int *)local_220;
                  }
                  goto LAB_00019445;
                }
              }
LAB_00019116:
              *(char **)(puVar29 + -0xc) = local_1f8;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x19126;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(char **)(puVar29 + -0xc) = "cannot create regular file %s";
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x1913b;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = iVar10;
LAB_00018b73:
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_00018b7c;
              error();
            }
            *(uint *)(puVar29 + -0xc) =
                 (-(uint)(*(char *)((int)local_1f0 + 0x23) == '\0') & 0xfffffe00) + 0x201;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x17c4d;
            local_228 = (int *)FUN_0001d190();
            piVar23 = local_1f0;
            if ((*(char *)((int)piVar14 + 0x21) == '\0') && (*(char *)((int)piVar14 + 0x25) == '\0')
               ) {
              if (-1 < (int)local_228) goto LAB_00017c77;
LAB_0001926b:
              *(undefined4 *)(puVar29 + -4) = 0x19270;
              piVar23 = __errno_location();
              if (*(char *)((int)local_1f0 + 0x16) == '\0') {
                iVar10 = *piVar23;
                if ((iVar10 == 2) && ((char)local_1f0[6] == '\0')) {
                  local_278 = 0;
                  goto LAB_000190a0;
                }
                local_1f4 = (char *)((uint)local_1f4 & 0xffffff00);
                goto LAB_00019116;
              }
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x19290;
              iVar10 = unlink(*(char **)(puVar29 + -0x10));
              if (iVar10 != 0) {
                *(int **)(puVar29 + -4) = piVar14;
                *(int **)(puVar29 + -8) = piVar14;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a104;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(char **)(puVar29 + -0xc) = "cannot remove %s";
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a119;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x14) = uVar11;
                *(undefined4 *)(puVar29 + -0x18) = uVar12;
                *(int *)(puVar29 + -0x1c) = *piVar23;
                goto LAB_00018b73;
              }
              if (*(char *)((int)local_1f0 + 0x2e) != '\0') {
                *(undefined4 *)(puVar29 + -4) = extraout_ECX_04;
                *(undefined4 *)(puVar29 + -8) = extraout_ECX_04;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a0aa;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(char **)(puVar29 + -0xc) = "removed %s\n";
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a0bf;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -8) = uVar11;
                *(undefined4 *)(puVar29 + -0xc) = uVar12;
                *(undefined4 *)(puVar29 + -0x10) = 1;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a0cb;
                __printf_chk();
              }
              local_278 = local_23c;
              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x21));
              if (*(char *)((int)local_1f0 + 0x21) == '\0') goto LAB_000190a0;
              *(int **)(puVar29 + -0x10) = local_1f0;
              *(undefined4 *)(puVar29 + -0x14) = 1;
              *(uint *)(puVar29 + -0x18) = local_284;
              *(char **)(puVar29 + -0x1c) = local_1f8;
              *(char **)(puVar29 + -0x20) = local_200;
              *(undefined4 *)(puVar29 + -0x24) = 0x192f1;
              cVar6 = FUN_000156e0();
              if (cVar6 != '\0') goto LAB_00019094;
              local_220 = (code *)0x0;
              bVar25 = 0;
            }
            else {
              if ((int)local_228 < 0) goto LAB_0001926b;
              bVar40 = *(byte *)((int)local_1f0 + 0x25);
              *(int **)(puVar29 + -4) = local_1f0;
              *(undefined4 *)(puVar29 + -8) = 0;
              *(uint *)(puVar29 + -0xc) = (uint)bVar40;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x1952e;
              cVar6 = FUN_00015960();
              if (cVar6 != '\0') {
LAB_00017c77:
                local_278 = 0;
                goto LAB_00017c81;
              }
              local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)piVar23 + 0x26));
              if (*(char *)((int)piVar23 + 0x26) == '\0') goto LAB_00017c77;
              local_1f4 = (char *)((uint)local_1f4._1_3_ << 8);
              local_220 = (code *)0x0;
              bVar25 = 0;
LAB_00018028:
              *(int **)(puVar29 + -0x10) = local_228;
              *(undefined4 *)(puVar29 + -0x14) = 0x18036;
              iVar10 = close(*(int *)(puVar29 + -0x10));
              if (iVar10 < 0) {
                *(int *)(puVar29 + -4) = iVar10;
                *(int *)(puVar29 + -8) = iVar10;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x1964e;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x19663;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x14) = 0x1966a;
                piVar14 = __errno_location();
                *(undefined4 *)(puVar29 + -0x14) = uVar11;
                *(undefined4 *)(puVar29 + -0x18) = uVar12;
                *(int *)(puVar29 + -0x1c) = *piVar14;
                *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                *(undefined **)(puVar29 + -0x24) = &UNK_00019677;
                error();
              }
            }
            *(undefined1 **)(puVar29 + -0x10) = local_208;
            *(undefined4 *)(puVar29 + -0x14) = 0x18056;
            iVar10 = close(*(int *)(puVar29 + -0x10));
            if (iVar10 < 0) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18e7e;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb009;
              *(undefined4 *)(puVar29 + -0x10) = 0;
              *(undefined4 *)(puVar29 + -0x14) = 0x18e93;
              uVar12 = dcgettext();
              *(undefined4 *)(puVar29 + -0x14) = 0x18e9a;
              piVar14 = __errno_location();
              *(undefined4 *)(puVar29 + -0x14) = uVar11;
              *(undefined4 *)(puVar29 + -0x18) = uVar12;
              *(int *)(puVar29 + -0x1c) = *piVar14;
              *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
              *(undefined **)(puVar29 + -0x24) = &UNK_00018ea5;
              error();
            }
            *(code **)(puVar29 + -0x10) = local_220;
            *(undefined4 *)(puVar29 + -0x14) = 0x1806f;
            free(*(void **)(puVar29 + -0x10));
            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
            bVar40 = bVar25;
            goto joined_r0x00018387;
          }
          bVar25 = 0;
          if (local_238 == (stat64 *)0x1000) {
            local_94.st_dev._0_4_ = (byte *)0x0;
            local_94.st_dev._4_4_ = 0;
            uVar9 = ~local_23c & local_204;
            *(stat64 **)(puVar29 + -4) = &local_94;
            *(uint *)(puVar29 + -8) = uVar9;
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x18dbe;
            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));
            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
            if (iVar10 != 0) {
              *(uint *)(puVar29 + -0xc) = uVar9 & 0xffffefff;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x18de5;
              iVar10 = mkfifo(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));
              local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
              if (iVar10 != 0) {
                *(int *)(puVar29 + -4) = iVar10;
                *(int *)(puVar29 + -8) = iVar10;
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x18e07;
                uVar11 = FUN_00020540();
                puVar33 = puVar29 + -8;
                *(undefined4 *)(puVar29 + -8) = 5;
                pcVar20 = "cannot create fifo %s";
                goto LAB_00016f90;
              }
            }
          }
          else if (((uint)local_238 & 0xffffbfff) == 0x2000 || local_238 == (stat64 *)0xc000) {
            local_94.st_dev._0_4_ = (byte *)local_1b4._32_4_;
            *(stat64 **)(puVar29 + -4) = &local_94;
            local_94.st_dev._4_4_ = local_190;
            *(uint *)(puVar29 + -8) = ~local_23c & local_204;
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(undefined4 *)(puVar29 + -0x10) = 1;
            *(undefined4 *)(puVar29 + -0x14) = 0x16f59;
            iVar10 = __xmknod(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                              *(__mode_t *)(puVar29 + -8),*(__dev_t **)(puVar29 + -4));
            local_208 = (undefined1 *)((uint)local_208 & 0xffffff00);
            if (iVar10 != 0) {
              *(char **)(puVar29 + -0xc) = local_1f8;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x16f7c;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -8;
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "cannot create special file %s";
              goto LAB_00016f90;
            }
          }
          else {
            if (local_238 != (stat64 *)0xa000) {
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x18e30;
              uVar11 = FUN_00020540();
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "%s has unknown file type";
              goto LAB_00016e8b;
            }
            *(undefined4 *)(puVar29 + -0xc) = local_188;
            *(char **)(puVar29 + -0x10) = local_200;
            *(undefined4 *)(puVar29 + -0x14) = 0x18a38;
            pcVar20 = (char *)FUN_0001b850();
            if (pcVar20 == (char *)0x0) {
              *(undefined4 *)(puVar29 + -4) = 0;
              *(undefined4 *)(puVar29 + -8) = 0;
              *(char **)(puVar29 + -0xc) = local_200;
              *(undefined4 *)(puVar29 + -0x10) = 4;
              *(undefined4 *)(puVar29 + -0x14) = 0x194d0;
              uVar11 = FUN_00020540();
              puVar33 = puVar29 + -8;
              *(undefined4 *)(puVar29 + -8) = 5;
              pcVar20 = "cannot read symbolic link %s";
              goto LAB_00016f90;
            }
            *(uint *)(puVar29 + -4) = (uint)*(byte *)((int)local_1f0 + 0x16);
            *(char **)(puVar29 + -8) = local_1f8;
            *(undefined4 *)(puVar29 + -0xc) = 0xffffff9c;
            *(char **)(puVar29 + -0x10) = pcVar20;
            *(undefined4 *)(puVar29 + -0x14) = 0x18a5e;
            iVar10 = FUN_0001ade0();
            if (iVar10 < 0) {
              *(undefined4 *)(puVar29 + -4) = 0x19315;
              piVar14 = __errno_location();
              local_208 = (undefined1 *)*piVar14;
              if ((undefined1 *)*piVar14 == (undefined1 *)0x0) goto LAB_00018a69;
              if (((*(char *)((int)local_1f0 + 0x2d) != '\x01') || ((byte)local_1f4 != '\0')) ||
                 ((local_154.st_mode & 0xf000) != 0xa000)) {
LAB_0001933e:
                *(char **)(puVar29 + -0x10) = pcVar20;
                *(undefined4 *)(puVar29 + -0x14) = 0x19347;
                free(*(void **)(puVar29 + -0x10));
                *(char **)(puVar29 + -0xc) = local_1f8;
                *(undefined4 *)(puVar29 + -0x10) = 4;
                *(undefined4 *)(puVar29 + -0x14) = 0x19356;
                uVar11 = FUN_00020540();
                *(undefined4 *)(puVar29 + -8) = 5;
                *(char **)(puVar29 + -0xc) = "cannot create symbolic link %s";
                *(undefined4 *)(puVar29 + -0x10) = 0;
                *(undefined4 *)(puVar29 + -0x14) = 0x1936b;
                uVar12 = dcgettext();
                *(undefined4 *)(puVar29 + -0x14) = uVar11;
                *(undefined4 *)(puVar29 + -0x18) = uVar12;
                *(undefined1 **)(puVar29 + -0x1c) = local_208;
                *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                *(undefined **)(puVar29 + -0x24) = &UNK_0001937a;
                error();
              }
              uVar9 = 0xffffffff;
              pcVar18 = pcVar20;
              do {
                if (uVar9 == 0) break;
                uVar9 = uVar9 - 1;
                cVar6 = *pcVar18;
                pcVar18 = pcVar18 + (uint)bVar40 * -2 + 1;
              } while (cVar6 != '\0');
              iVar10 = ~uVar9 - 1;
              if ((local_154.st_size._4_4_ != 0) || ((int)local_154.st_size != iVar10))
              goto LAB_0001933e;
              *(int *)(puVar29 + -4) = iVar10;
              *(int *)(puVar29 + -8) = iVar10;
              *(int *)(puVar29 + -0xc) = (int)local_154.st_size;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e2b;
              iVar10 = FUN_0001b850();
              if (iVar10 == 0) goto LAB_0001933e;
              *(int *)(puVar29 + -4) = iVar10;
              *(int *)(puVar29 + -8) = iVar10;
              *(char **)(puVar29 + -0xc) = pcVar20;
              *(int *)(puVar29 + -0x10) = iVar10;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e41;
              iVar8 = strcmp(*(char **)(puVar29 + -0x10),*(char **)(puVar29 + -0xc));
              if (iVar8 != 0) {
                *(int *)(puVar29 + -0x10) = iVar10;
                *(undefined4 *)(puVar29 + -0x14) = 0x1a12b;
                free(*(void **)(puVar29 + -0x10));
                goto LAB_0001933e;
              }
              *(int *)(puVar29 + -0x10) = iVar10;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e55;
              free(*(void **)(puVar29 + -0x10));
              *(char **)(puVar29 + -0x10) = pcVar20;
              *(undefined4 *)(puVar29 + -0x14) = 0x19e5d;
              free(*(void **)(puVar29 + -0x10));
            }
            else {
LAB_00018a69:
              *(char **)(puVar29 + -0x10) = pcVar20;
              *(undefined4 *)(puVar29 + -0x14) = 0x18a72;
              free(*(void **)(puVar29 + -0x10));
            }
            if (*(char *)((int)local_1f0 + 0x25) != '\0') {
              *(undefined4 *)(puVar29 + -4) = 0x193dc;
              FUN_00015060();
            }
            local_208 = (undefined1 *)CONCAT31(local_208._1_3_,1);
            bVar40 = *(byte *)((int)local_1f0 + 0x1d);
            bVar25 = bVar40;
            if (bVar40 != 0) {
              *(undefined4 *)(puVar29 + -8) = local_1b4._28_4_;
              *(undefined4 *)(puVar29 + -0xc) = local_1b4._24_4_;
              *(char **)(puVar29 + -0x10) = local_1f8;
              *(undefined4 *)(puVar29 + -0x14) = 0x18aba;
              iVar10 = lchown(*(char **)(puVar29 + -0x10),*(__uid_t *)(puVar29 + -0xc),
                              *(__gid_t *)(puVar29 + -8));
              if (iVar10 == 0) {
                bVar25 = 0;
                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,bVar40);
              }
              else {
                *(int **)(puVar29 + -0x10) = local_1f0;
                *(undefined4 *)(puVar29 + -0x14) = 0x18ad3;
                cVar6 = FUN_00015b20();
                local_208 = (undefined1 *)CONCAT31(local_208._1_3_,cVar6);
                if (cVar6 == '\0') {
                  *(char **)(puVar29 + -4) = pcVar20;
                  *(undefined4 *)(puVar29 + -8) = 5;
                  *(char **)(puVar29 + -0xc) = "failed to preserve ownership for %s";
                  *(undefined4 *)(puVar29 + -0x10) = 0;
                  *(undefined4 *)(puVar29 + -0x14) = 0x19574;
                  uVar11 = dcgettext();
                  *(undefined4 *)(puVar29 + -0x14) = 0x1957b;
                  piVar14 = __errno_location();
                  *(char **)(puVar29 + -0x14) = local_1f8;
                  *(undefined4 *)(puVar29 + -0x18) = uVar11;
                  *(int *)(puVar29 + -0x1c) = *piVar14;
                  *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                  *(undefined **)(puVar29 + -0x24) = &UNK_0001958b;
                  error();
                }
                bVar25 = 0;
              }
            }
          }
LAB_000166da:
          bVar40 = local_238 != (stat64 *)0x4000;
          if ((byte)local_1f4 == '\0') {
            local_20c = (byte *)CONCAT31(local_20c._1_3_,*(byte *)(local_1f0 + 5));
            bVar7 = (*(byte *)(local_1f0 + 5) ^ 1) & bVar40;
            if (bVar7 != 0) {
              bVar2 = *(byte *)((int)local_1f0 + 0x25);
              if ((*(char *)((int)local_1f0 + 0x21) != '\0') || (bVar40 = bVar7, bVar2 != 0)) {
                *(int **)(puVar29 + -4) = local_1f0;
                *(undefined4 *)(puVar29 + -8) = 0;
                *(uint *)(puVar29 + -0xc) = (uint)bVar2;
                *(char **)(puVar29 + -0x10) = local_1f8;
                *(undefined4 *)(puVar29 + -0x14) = 0x177d2;
                bVar40 = FUN_00015960();
                if (bVar40 == 0) {
                  local_1f4 = (char *)CONCAT31(local_1f4._1_3_,*(char *)((int)local_1f0 + 0x26));
                  bVar40 = bVar7;
                  if (*(char *)((int)local_1f0 + 0x26) != '\0') goto LAB_00016fad;
                }
              }
            }
          }
          uVar9 = 1;
          if ((byte)local_1fc != '\0') {
            local_24c = local_24c & 0xffffff00;
            goto LAB_00016722;
          }
LAB_00016794:
          if (((*(char *)((int)local_1f0 + 0x17) != '\0') && (bVar40 != 0)) || (bVar25 != 0))
          goto LAB_0001614a;
        }
        if (*(char *)((int)local_1f0 + 0x1f) == '\0') {
LAB_00016870:
          if ((char)local_208 == '\0') goto LAB_0001687d;
          if (*(char *)((int)local_1f0 + 0x27) == '\0') goto LAB_0001614a;
          *(int **)(puVar29 + -0xc) = local_1f0;
          *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;
          *(undefined4 *)(puVar29 + -0x14) = 0x17511;
          cVar6 = FUN_00014b00();
          if (cVar6 != '\0') goto LAB_0001614a;
          cVar6 = (char)local_1f0[10];
        }
        else {
          local_30 = local_174;
          local_2c = local_170;
          local_28 = local_16c;
          local_24 = local_168;
          if ((char)local_208 != '\0') {
            *(__time_t **)(puVar29 + -0xc) = &local_30;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x16805;
            iVar10 = FUN_000225b0();
            if (iVar10 != 0) {
              *(undefined4 *)(puVar29 + -4) = 0x16811;
              piVar14 = __errno_location();
              if (*piVar14 != 0x26) goto LAB_00016816;
            }
            goto LAB_00016870;
          }
          *(__time_t **)(puVar29 + -0xc) = &local_30;
          *(char **)(puVar29 + -0x10) = local_1f8;
          *(undefined4 *)(puVar29 + -0x14) = 0x18652;
          iVar10 = FUN_00022580();
          if (iVar10 != 0) {
LAB_00016816:
            *(char **)(puVar29 + -0xc) = local_1f8;
            *(undefined4 *)(puVar29 + -0x10) = 4;
            *(undefined4 *)(puVar29 + -0x14) = 0x16826;
            uVar11 = FUN_00020540();
            *(undefined4 *)(puVar29 + -8) = 5;
            *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb03f;
            *(undefined4 *)(puVar29 + -0x10) = 0;
            *(undefined4 *)(puVar29 + -0x14) = 0x1683b;
            local_1fc = dcgettext();
            *(undefined4 *)(puVar29 + -0x14) = 0x16846;
            piVar14 = __errno_location();
            uVar9 = local_1fc;
            *(undefined4 *)(puVar29 + -0x14) = uVar11;
            *(uint *)(puVar29 + -0x18) = uVar9;
            *(int *)(puVar29 + -0x1c) = *piVar14;
            *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
            *(undefined **)(puVar29 + -0x24) = &UNK_00016857;
            error();
          }
LAB_0001687d:
          if ((*(char *)((int)local_1f0 + 0x1d) != '\0') &&
             ((((byte)local_1f4 != '\0' || (local_1b4._24_4_ != local_154.st_uid)) ||
              (local_1b4._28_4_ != local_154.st_gid)))) {
            *(stat64 **)(puVar29 + -8) = &local_154;
            *(uint *)(puVar29 + -0xc) = (uint)local_1f4 & 0xff;
            *(undefined1 **)(puVar29 + -0x10) = local_1b4;
            *(undefined4 *)(puVar29 + -0x14) = 0x168d3;
            iVar10 = FUN_00015b60();
            if (iVar10 == -1) goto LAB_00016148;
            if (iVar10 == 0) {
              local_204 = local_204 & 0xfffff1ff;
            }
          }
          if (*(char *)((int)local_1f0 + 0x27) != '\0') {
            *(int **)(puVar29 + -0xc) = local_1f0;
            *(undefined4 *)(puVar29 + -0x10) = 0xffffffff;
            *(undefined4 *)(puVar29 + -0x14) = 0x18c76;
            cVar6 = FUN_00014b00();
            if ((cVar6 == '\0') && ((char)local_1f0[10] != '\0')) goto LAB_00016148;
          }
          if ((*(char *)((int)local_1f0 + 0x1e) == '\0') && ((char)local_1f0[6] == '\0')) {
            if (*(char *)((int)local_1f0 + 0x2b) == '\0') {
              if ((*(byte *)(local_1f0 + 8) & (byte)local_1f4) == 0) {
                if (local_23c == 0) {
LAB_0001694e:
                  if ((byte)local_224 == '\0') goto LAB_0001614a;
                }
                else {
                  *(undefined4 *)(puVar29 + -4) = 0x191ba;
                  uVar22 = FUN_00015d90();
                  local_23c = local_23c & ~uVar22;
                  if (local_23c == 0) goto LAB_0001694e;
                  if ((byte)local_224 != '\x01') {
                    if ((byte)local_1f4 != '\0') {
                      *(uint *)(puVar29 + -4) = ~uVar22;
                      *(stat64 **)(puVar29 + -8) = &local_154;
                      *(char **)(puVar29 + -0xc) = local_1f8;
                      *(undefined4 *)(puVar29 + -0x10) = 3;
                      *(undefined4 *)(puVar29 + -0x14) = 0x19977;
                      iVar10 = __lxstat64(*(int *)(puVar29 + -0x10),*(char **)(puVar29 + -0xc),
                                          *(stat64 **)(puVar29 + -8));
                      if (iVar10 != 0) {
                        *(int *)(puVar29 + -4) = iVar10;
                        *(int *)(puVar29 + -8) = iVar10;
                        puVar30 = puVar29 + -0xc;
                        *(char **)(puVar29 + -0xc) = local_1f8;
                        goto LAB_0001620e;
                      }
                    }
                    local_270 = local_154.st_mode;
                    if ((local_23c & ~local_154.st_mode) == 0) goto LAB_0001614a;
                  }
                }
                *(uint *)(puVar29 + -0xc) = local_270 | local_23c;
                *(char **)(puVar29 + -0x10) = local_1f8;
                *(undefined4 *)(puVar29 + -0x14) = 0x16976;
                iVar10 = chmod(*(char **)(puVar29 + -0x10),*(__mode_t *)(puVar29 + -0xc));
                if (iVar10 != 0) {
                  *(int *)(puVar29 + -4) = iVar10;
                  *(int *)(puVar29 + -8) = iVar10;
                  *(char **)(puVar29 + -0xc) = local_1f8;
                  *(undefined4 *)(puVar29 + -0x10) = 4;
                  *(undefined4 *)(puVar29 + -0x14) = 0x16990;
                  uVar11 = FUN_00020540();
                  *(undefined4 *)(puVar29 + -8) = 5;
                  *(int *)(puVar29 + -0xc) = (int)ppuVar28 + -0xb027;
                  *(undefined4 *)(puVar29 + -0x10) = 0;
                  *(undefined4 *)(puVar29 + -0x14) = 0x169a5;
                  local_1f4 = (char *)dcgettext();
                  *(undefined4 *)(puVar29 + -0x14) = 0x169b0;
                  piVar14 = __errno_location();
                  pcVar20 = local_1f4;
                  *(undefined4 *)(puVar29 + -0x14) = uVar11;
                  *(char **)(puVar29 + -0x18) = pcVar20;
                  *(int *)(puVar29 + -0x1c) = *piVar14;
                  *(undefined4 *)(puVar29 + -0x20) = 0;
                    /* WARNING: Subroutine does not return */
                  *(undefined **)(puVar29 + -0x24) = &UNK_000169c1;
                  error();
                }
                goto LAB_0001614a;
              }
              uVar22 = 0x1b6;
              if ((local_204 & 0x7000) == 0x4000) {
                uVar22 = 0x1ff;
              }
              *(undefined4 *)(puVar29 + -4) = 0x191a8;
              uVar21 = FUN_00015d90();
              *(uint *)(puVar29 + -8) = ~uVar21 & uVar22;
            }
            else {
              *(int *)(puVar29 + -8) = local_1f0[4];
            }
            *(undefined4 *)(puVar29 + -0xc) = 0xffffffff;
            *(char **)(puVar29 + -0x10) = local_1f8;
            *(undefined4 *)(puVar29 + -0x14) = 0x18ece;
            iVar10 = FUN_0001b7d0();
            if (iVar10 == 0) goto LAB_0001614a;
            goto LAB_00016148;
          }
          *(uint *)(puVar29 + -0x10) = local_204;
          *(undefined4 *)(puVar29 + -0x14) = 0xffffffff;
          *(char **)(puVar29 + -0x18) = local_1f8;
          *(undefined4 *)(puVar29 + -0x1c) = 0xffffffff;
          *(char **)(puVar29 + -0x20) = local_200;
          *(undefined4 *)(puVar29 + -0x24) = 0x183b6;
          iVar10 = FUN_0001b720();
          if (iVar10 == 0) goto LAB_0001614a;
          cVar6 = (char)local_1f0[9];
        }
        if (cVar6 == '\0') goto LAB_0001614a;
      }
    }
  }
LAB_00016148:
  uVar9 = 0;
LAB_0001614a:
  if (local_20 == *(int *)(in_GS_OFFSET + 0x14)) {
    return uVar9;
  }
                    /* WARNING: Subroutine does not return */
  *(undefined4 *)(puVar29 + -4) = 0x19855;
  FUN_0002bcb0();
}

